| |
|
 |
| |
| |
Duration: Two (2) Weeks
This session gives an in-depth knowledge on Core Java. The lab sessions will stress more on teaching candidates Object oriented concepts and designing classes. This is a two (2) weeks course with 50 % theory and 50 % lab. No prior knowledge of Java or object oriented concept is expected of the candidates |
| |
|
| |
Modules Covered |
| |
| Module 1 |
Description |
Getting Started |
- List the key features of Java Programming language, JVM, Garbage collection and Security features.
- Write a simple Java application, compile and run it
|
|
| |
|
| |
| Module 2 |
Description |
Object-Oriented Programming |
- Describe the terms class, object, attribute, method, and constructor
- Write code to define a method
- Access the member variables of an class using the operator,
- Write code to create and initialize an object
- Use the this keyword to access the "current" object
- Use private and public access modifiers
- Write code to invoke a method of a particular object
- Write class constructors and invoke particular constructors using keyword new with arguments
- Understand the use of the package and import statements for library access
- Use the Java Application Programming Interface (API) online documentation
|
|
| |
|
| |
| Module 3 |
Description |
Identifiers, Keywords, and Types |
- Use comments in a program
- Distinguish between valid and invalid identifiers
- Recognize the keywords in the Java programming language
- List the eight primitive types
- Define literal values for numeric and textual types
- Describe the coding conventions for classes, interfaces, methods, variables, constants, and control structures
- Create a class definition for a simple class containing primitive member variables
- Declare variables of class type
- Describe the significance of a reference variable and state the consequences of assignment between variables of class type
|
|
| |
|
| |
| Module 4 |
Description |
Expressions and Flow Control |
- Distinguish between member and automatic variables
- Describe the initialization of member variables
- Recognize and correct a Possible reference before assignment compiler error
- Recognize, describe, and use operators
- Distinguish between legal and illegal assignments of primitive types
- Recognize Boolean expressions and state the requirement for these in control constructs
- Recognize assignment compatibility and required casts in fundamental types
- Make appropriate use of if, switch, for, while, and do constructions and the labeled forms of break and continue
|
|
| |
|
| |
| Module 5 |
Description |
Arrays |
- Declare and create arrays of primitive, class, or array types
- Explain why and show how to initialize the elements of an array
- Determine the number of elements in any array
- Write code to copy arrays
|
|
| |
|
| |
| Module 6 |
Description |
Class Design |
- Describe encapsulation, polymorphism, and inheritance
- Use sub classing
- Create and use heterogeneous collections
- Create and use methods that accept generic argument types
- Use access control levels
- Invoke overloaded methods and constructors
- Write overriding methods in a subclass and describe execution flow when executing an overridden method
- Invoke overridden methods and describe how the method is chosen
- Invoke overridden constructors
- Control invocation of parent class constructors
- Use wrapper classes
|
|
| |
|
| |
| Module 7 |
Description |
Advanced Class Features |
- Declare and use static variables and methods
- Declare and use final classes, methods, and variables
- Use abstract methods and interfaces
- Use inner classes
|
|
| |
|
| |
| Module 8 |
Description |
Java Library |
- String Handling
- Exploring Java.lang
- Java.util
- Explain collection framework
|
|
| |
|
| |
| Module 9 |
Description |
Exceptions |
- Define exceptions
- Describe the use of the keywords try, catch, and finally
- Describe exception categories
- Identify common exceptions
- Write code to handle your own exceptions
|
|
| |
|
| |
| Module 10 |
Description |
Text-Based Applications |
- Write code to access command-line arguments and system properties
- Examine and manipulate files and directories
- Read and write text to file streams
- Describe the Collections API
- Use iterators
- Identify deprecated classes and describe how to handle them during migration to Java 2 SDK
|
|
| |
|
| |
| Module 11 |
Description |
Threads |
- Describe a thread
- Create separate threads, 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 some of the difficulties that arise when multiple threads share data
- Use the keyword synchronized to protect data from corruption
- Use wait() and notify() to communicate between threads
|
|
| |
|
| |
| Module 12 |
Description |
Advanced I/O Streams |
- Use the Streams version of the java.io package
- Construct and use node streams
- Distinguish Readers and Writers from Streams, and select appropriately between them
- Construct and use processing streams
- Understand how to create your own processing stream classes
- Read, write, and update data in random access files
- Use the Serialization interface to encode the state of an object to a stream and to implement object persistence
|
|
| |
|
| |
| Module 13 |
Description |
Networking |
- Create a minimal TCP/IP client
|
|
| |
|