Java SCJP Certification Exam CX-310-055 Course Details

• Introduction to Java Programming
• Object-Oriented Programming
• Identifiers, Keywords, and Types
• Expressions and Flow Control
• Arrays· Class Design
• Advanced Class Features
• Exceptions and Assertions
• Text-Based Applications
• Building Java GUIs
• GUI Event Handling
• GUI-Based Applications
• Threads
• Advanced I/O Streams
• Networking


Java Programming

Introduction to Java Programming
- Describe the key features of Java technology
- Write, compile, and run a simple Java technology application
- Describe the function of the Java Virtual Machine (JVM)
- Define garbage collection
- List the three tasks performed by the Java platform that handle code security


Object-Oriented Programming
- Define modeling concepts: abstraction, encapsulation, and packages
- Discuss why you can reuse Java technology application code
- Define class, member, attribute, method, constructor, and package
- Use the access modifiers private and public as appropriate for the guidelines of encapsulation
- Invoke a method on a particular object
- Use the Java technology application programming interface (API) online documentation

Identifiers, Keywords, and Types
- Use comments in a source program
- Distinguish between valid and invalid identifiers
- Recognize Java technology keywords
- List the eight primitive types
- Define literal values for numeric and textual types
- Define the terms primitive variable and reference variable
- Declare variables of class type
- Construct an object using new
- Describe default initialization
- Describe the significance of a reference variable
- State the consequence of assigning variables of class type

Expressions and Flow Control
- Distinguish between instance and local variables
- Describe how to initialize instance variables
- Identify and correct a Possible reference before assignment compiler error
- Recognize, describe, and use Java software operators
- Distinguish between legal and illegal assignments of primitive types
- Identify Boolean expressions and their requirements in control constructs
- Recognize assignment compatibility and required casts in fundamental types
- Use if, switch, for, while, and do constructions and the labeled forms of break and continue as flow control structures in a program

Arrays
- Declare and create arrays of primitive, class, or array types
- Explain why elements of an array are initialized
- Explain how to initialize the elements of an array
- Determine the number of elements in an array
- Create a multidimensional array
- Write code to copy array values from one array to another

Class Design
- Define inheritance, polymorphism, overloading, overriding, and virtual method invocation
- Use the access modifiers protected and the default (package-friendly)
- Describe the concepts of constructor and method overloading
- Describe the complete object construction and initialization operation

Advanced Class Features
- Create static variables, methods, and initializers
- Create final classes, methods, and variables
- Create and use enumerated types
- Use the static import statement
- Create abstract classes and methods
- Create and use an interface

Exceptions and Assertions
- Define exceptions
- Use try, catch, and finally statements
- Describe exception categories
- Identify common exceptions
- Develop programs to handle your own exceptions
- Use assertions
- Distinguish appropriate and inappropriate uses of assertions
- Enable assertions at runtime

Text-Based Applications
- Write a program that uses command-line arguments and system properties
- Write a program that reads from standard input
- Describe the C-type formatted input and output
- Write a program that can create, read, and write files
- Describe the basic hierarchy of collections in Java 2 Software Development Kit (Java 2 SDK)
- Write a program to iterate over a collection
- Write a program that uses generic collections

Building Java GUIs
- Describe the Abstract Windowing Toolkit (AWT) package and its components
- Define the terms containers, components, and layout managers, and describe how they work together to build a GUI
- Use layout managers
- Use the FlowLayout, BorderLayout, and GridLayout managers to achieve a desired dynamic layout
- Add components to a container
- Use the Frame and Panel containers appropriately
- Describe how complex layouts with nested containers work

GUI Event Handling
- Define events and event handling
- Write code to handle events that occur in a GUI
- Describe the concept of adapter classes, including how and when to use them
- Determine the user action that originated the event from the event object details
- Identify the appropriate listener interface for a variety of event types
- Create the appropriate event handler methods for a variety of event types
- Understand the use of inner classes and anonymous classes in event handling

GUI-Based Applications
- Identify the key AWT components and the events that they trigger
- Describe how to construct a menu bar, menu, and menu items in a Java GUI
- Understand how to change the color and font of a component

Threads
- Define a thread
- Create separate threads in a Java technology program, controlling the code and data that are used by that thread
- Control the execution of a thread and write platform-independent code with threads
- Describe the difficulties that might arise when multiple threads share data
- Use wait and notify to communicate between threads
- Use synchronized to protect data from corruption

Advanced I/O Streams
- Describe the main features of the java.io package
- Construct node and processing streams, and use them appropriately
- Distinguish readers and writers from streams, and select appropriately between them

Networking
- Develop code to set up the network connection
- Understand the Transmission Control Protocol/Internet Protocol (TCP/IP)
- Use ServerSocket and Socket classes for implementation of TCP/IP clients and servers