Introduction of Java
 
What is Java?
How to Get Java
A First Java Program
Compiling and Interpreting Applications
The JDK Directory Structure
   


Data types and Variables
 
Primitive Datatypes ,Declarations
Variable Names
Numeric Literals,Character Literals
String,String Literals
Arrays,Non-Primitive Datatypes,The Dot Operator
   


Operators and Expressions
 
Expressions
Assignment Operator
Arithmetic Operators
Relational Operators
Logical Operators
Increment and Decrement Operators
Operate-Assign Operators (+=, etc.)
The Conditional Operator
Operator Precedence
Implicit Type Conversions
The Cast Operator
   


Control Flow Statements
 
Statements
Conditional (if) Statements
Data types and Variables 3
Adding an else if
Conditional (switch) Statements
while and do-while Loops
for Loops
A for Loop Diagram
Enhanced for Loop
The continue Statement
The break Statement
   


Methods
 
Methods
Calling Methods
Defining Methods
Method Parameters
Scope
Method Parameters
So, Why All the static?
   


Object-Oriented Programming
 
Introduction to Object-Oriented Programming
Classes and Objects
Fields and Methods
Encapsulation
Access Control
Inheritance
Polymorphism
   


Objects and Classes
 
Defining a Class
Creating an Object
Instance Data and Class Data
Methods
Constructors
Access Modifiers
Encapsulation
   


Using Java Objects
 
Printing to the Console
printf Format Strings
StringBuilder and StringBuffer
Methods and Messages
toString
Parameter Passing
Comparing and Identifying Objects, Destroying Objects
   


Inheritance in Java
 
Inheritance
Inheritance in Java
Casting
Method Overriding
Polymorphism
super
The Object Class
   


Packages
 
The import Statement
Static Imports
Casting
CLASSPATH and Import
Defining Packages
Package Scope
   


Exception Handling
 
Exceptions Overview
Catching Exceptions
The finally Block
Exception Methods
Declaring Exceptions
Defining and Throwing Exceptions
Errors and RuntimeExceptions
Assertions
   


Input/Output Streams
 
Overview of Streams
Bytes vs. Characters
Converting Byte Streams to Character Streams
File Object
Binary Input and Output
PrintWriter Class
Reading and Writing Objects
Basic and Filtered Streams
   


Collection Framework
 
The Collections Framework
The Set Interface
Set Implementation Classes
The List Interface
List Implementation Classes
The Map Interface
Map Implementation Classes
   


Inner Classes
 
Inner Classes
Member Classes
Local Classes
Anonymous Classes
Instance Initializers
Static Nested Classes
   


Introduction to Threads
 
Non-Threaded Applications
Threaded Applications
Creating Threads
Thread States
Runnable Threads
Coordinating Threads
Interrupting Threads
Runnable Interface ,ThreadGroups
   


Interfaces and Abstract Classes
 
Separating Interface and Implementation
UML Interfaces and Realization
Defining Interfaces
Implementing and Extending Interfaces
Runnable Threads
Abstract Classes
   


Serialization
 
Object Serialization
Serializable Interface
Serialization API
ObjectInputStream and ObjectOutputStream
The Serialization Engine
Transient Fields
readObject and writeObject
Externalizable Interface
   


Generics
 
Using Generics
Type Erasure
Type Boundaries
Wildcards , Generic Methods
Strengths and Weaknesses of Generics
Legacy Code and Generics
   


Annotations
 
Uses for Meta-Data
The Annotations Model
Annotation Types and Annotations
Built-In Annotations
Annotations vs. Descriptors (XML)
   


Reflection
 
Uses for Meta-Data
The Reflection API ,The Class Class
The java.lang.reflect Package
Reading Type Information
Navigating Inheritance Trees
Dynamic Instantiation ,Dynamic Invocation
Reflecting on Generics