CS计算机代考程序代写 Java database JDBC javaFx Final Exam Syllabus: 95-712 OOP JAVA Elementary Programming

Final Exam Syllabus: 95-712 OOP JAVA Elementary Programming
• Use variables, expressions, operators
• Flow control
• Iteration
• Console I/O
• Typecasting and understanding variable scope
• Develop code that declares, initializes, and uses primitives, arrays, and objects as
static, instance, and local variables.
• Use and process Single/Multidimensional Arrays of objects
Java Class Design
• Use access modifiers: default, private, protected, and public
• Develop code that declares both static and non-static methods
• Overload constructors and methods (learn to write a copy-constructor)
• Use the instanceof operator and casting
• Override methods.
• Understand primitive wrapper classes (such as Boolean, Character, Double, Integer,
etc.), and autoboxing & unboxing
• Construct abstract Java classes and subclasses
• Given a set of classes and superclasses, develop constructors for one or more of the
classes. Given a class declaration, determine if a default constructor will be created,
and if so, determine the behaviour of that constructor
• Develop code that uses static and final keyword on variables, methods, and classes.
• Understand virtual method invocation and write polymorphic methods
• Use polymorphism using interface references and superclass references
• Recognise and understand code using inner classes and anonymous inner classes
• Understand what “functional interfaces” are, how to write one and use lambda
expressions
• Learn how to clone objects
Object-Oriented Design Principles
• Understand code that implements encapsulation.
• Develop code that declares abstract classes, interfaces, and includes the appropriate
use of package and import statements (including static imports).
• Write code that declares, implements and/or extends interfaces
• Choose between interface inheritance and class inheritance
• Apply cohesion, low-coupling, IS-A, and HAS-A principles
• Apply object composition principles (including has-a relationships)
• Override hashCode, equals, and toString methods from Object class.
1

Generics
• Create a generic class and generic methods
• Take a regular class and convert it into a generic class
• Recognize the limitations of non-generic classes and how generics bring type safety
Collections
• Knowing when to use which concrete collection class like HashMap/ArrayList
• Create and use List, Set and Deque implementations
• Create and use Map implementations
• Use java.util.Comparator and java.lang.Comparable
• Sort and search arrays and lists using Collections class and understand how “natural ordering” works
String Processing
• String manipulation with String
• Essential String methods
• Text parsing in Java
• Input processing with Scanner
• Text output and formatting with printf
• String vs StringBuilder
Exceptions
• Use throw and throws statements
• Use try/catch/finally blocks
• Develop code that uses try-with-resources statements
Java I/O (note that only text I/O is included)
• Understand the usage of the File class
• Read and write data from text files (any combination of classes is sufficient)
• What do we mean by object serialization? Understand Serializable and the process of
serialization. (theoretical understanding is sufficient)
Threads (only included in multiple choice questions)
• Define, instantiate, and start new threads using the Thread class and the Runnable interface
• Recognize the states in which a thread can exist, and identify ways in which a thread can transition from one state to another
• Understand how object locking used to protect static or instance variables from concurrent access problems
• Given a scenario, understand code that makes appropriate use of wait, notify, or notifyAll
2

JDBC
• Understand the interfaces that make up the core of the JDBC API including the Driver, Connection, Statement, and ResultSet interfaces and their relationship to provider implementations
• Identify the components required to connect to a database using the DriverManager class including the JDBC URL
• Understand how to submit queries and read results from the database including creating statements, returning result sets, iterating through the results, and properly closing result sets, statements, and connections
Design Patterns
• Understand what is the singleton pattern and how to implement it
• Understand and recognise code that implements the DAO pattern and its benefits
• Understand the factory pattern and recognise code
JavaFX
• What are two types of JavaFX applications and their advantages
• Understand the structure of JavaFX and JavaFX (FXML) applications
• Recognise the use of inner classes and anonymous inner classes in writing event
handling code
• Understand and recognise the use of lambda expressions in event handling code
3