Java For Developers
5 Day Instructor Led Course – 35 Contact Hours
Center Benefits
UAE Ministry of Education Accredited Institute
International Curriculum
Certified Instructors
Computer Labs: 1 PC for each student
Certificate of Achievement (Ministry Attestation fees apply)
Training Quality Guarantees
Course Overview
This course teaches programmers the skills necessary to create Java programming
system applications and satisfies the skills necessary to pass the Sun Java
Certified Programmer Exam.
Target Audience
Students who can benefit from this course are programmers who are interested in
adding the Java programming language to their list of skills and students who
are preparing for the Sun Certified Programmer for Java examination.
Prerequisites
To succeed fully in this course, students should be able to:
Understand object-oriented principles
Create or compile simple programs in a language, such as C or C++ or have
completed the SL-110: Fundamentals of the Java Programming Language course and
have created and compiled simple Java programs.
Create and edit text files using a text editor
Use an Internet browser, such as Netscape Navigator
Skills Gained
Upon completion of this course, you should be able to:
Create Java technology applications that leverage the object-oriented features
of the Java language, such as encapsulation, inheritance and polymorphism
Execute and run a Java technology application
Use Java technology data types and expressions
Use Java technology flow control constructs
Use arrays and other data collections
Implement error-handling techniques using exception handling
Create event driven GUI using Java technology GUI components: panels, buttons,
labels, text fields, and text areas
Implement I/O functionality to read from and write to data and text files
Create multithreaded programs
Create a simple Transmission Control Protocol/Internet Protocol (TCP/IP) client
that communicate through sockets
Course Outline
Module 1: Getting Started
Describe the key features of Java technology
Write, compile, and run a simple Java technology application
Describe the Java virtual machine’s (JVM machine’s) function
Define garbage collection
List the three tasks performed by the Java platform that handle code security
Module 2: 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
In a Java technology program, identify the following: The package statement; The
import statements; Classes, methods and attributes; and Constructors
Use the Java technology API online documentation
Module 3: 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
Module 4: 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
Module 5: 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 type to another
Module 6: Class Design
Define inheritance, polymorphism, overloading, overriding, and virtual method
invocation
Use the access modifiers protected and “package-friendlyâ€
Describe the concepts of constructor and method overloading
Describe the complete object construction and initialization operation
In a Java program, identify the following: Overloaded methods and constructors;
The use of this to call overloaded constructors; Overridden methods; Invocation
of super class methods; Parent class constructors; and Invocation of parent
class constructors
Module 7: Advanced Class Features
Describe static variables, methods, and initializers
Describe final classes, methods, and variables
Explain how and when to use abstract classes and methods
Explain how and when to use nested classes
Distinguish between static and non-static nested classes
Explain how and when to use an interface
In a Java software program, identify: static methods and attributes; final
methods and attributes; Nested classes; interface and abstract classes; and
abstract methods
Module 8: 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
Disable assertions at runtime
Module 9: Text-Based
Applications
Write a program that uses command-line arguments and system properties
Write a program that reads from standard input
Write a program that can create, read, and write files
Describe the basic hierarchy of collections in Java 2 SDK
Write a program that uses sets and lists
Write a program to iterate over a collection
Describe the collection classes that existed before Java 2 SDK
Identify deprecated classes and explain how to migrate from Java Development Kit
(JDK) 1.0 to JDK 1.1 to Java 2 JDK
Module 10: 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
In a Java technology program, identify the following: Containers; The associated
layout managers; and the layout hierarchy of all components
Module 11: 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 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
Module 12: 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
Module 13: 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
Module 14: 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
Module 15: Networking
Develop code to set up the network connection
Understand the TCP/IP protocol
Use ServerSocket and Socket classes for implementing TCP/IP clients and servers