Name
Java Jump Start for C# Programming

Code
3424

Duration
16 Hours

Description
This course was developed especially for C# programmers and it comes to serve as a jump start for C# programmers that move into Java.

Population
C# Developers.

Objectives
Be capable of developing Java applications based on the differences between C# and Java.

Prerequisites
Practical experience in C# programming.

Topics
Let's Start
History
JVM
JDK
JRE
Hello World
JavaDoc
Classes & Packages
API Documentation

The Basic
Java comparing with C#
Simple Output
Remarks
Native Data Types
Variables
Keywords
Identifiers
Expressions & Operators
Simple & Compound Statements
Control Statements
Looping Statements
Assignments
Local Variables
Assertion
Annotations

Arrays & Strings
Array of Native Type Values
Array of Objects
Square Brackets Position
Copying Array Values
Multi Dimensional Array
The 'length' Variable
The 'String' Class
Instantiating String
Comparing Strings
The 'toString()' Method
The StringBuffer Class
The StringBuilder Class
The StringTokenizer Class
Passing Arguments to 'main' Method

Inheritance
Introduction to Inheritance
Inheritance in Java
Derivation Syntax
Inheritance Meaning
Constructors & Inheritance
Access Modifiers
Overriding Methods
Polymorphism
Constructors & 'super' Keyword
Abstract Class
Interfaces
The 'instanceof' Operator
Casting References
Deprecated Methods
The 'object' Class

Inner Classes
Inner Classes Types
In-Depth Meaning
Inner Classes within Methods
Annonymous Inner Class
Static Inner Class

Exceptions Handling
The Exceptions Handling Mechanism
Exceptions Classes Hierarchy
Three Types of Exceptions
Try&Catch Statement
The 'throw' Command
The Throwing Chain
The 'finally' Block
The 'throws' Adding
The 'Handle or Declare' Rule
Methods Overloading
Samples

Threads
What is a Thread?
The Thread Parts
Creating New Thread
Starting The Thread
Threads & Applets
Extending Thread
Time Slicing & Preemptive
Priority Pools
Threads Scheduling
Killing Threads
The 'join()' Method
The 'yield()' Method
Synchronization
The 'lock' Flag
Synchronized Method
Deadlocks
The 'wait()' & 'notify()' Methods
Deamon Threads
Thread Dump
Java SE 5.0 & 6.0 New Threads Features

I/O Streams
Java I/O Overview
I/O Streams Categories
Byte & Char Streams
The InputStream Abstract Class
The OutputStream Abstract Class
Writing/Reading To/From Files
The Reader Methods
The Writer Methods
Streams Chaining
InputStreamReader
OutputStreamWriter
URL Class
Objects Serialization
The 'File' Class
The 'RandomAccess' Class

Java Utilities
Calendar
Wrapper Classes
Collections Framework

GUI Using Swing
Introduction to Swing
Swing comparing with AWT
Events Handling
MVC Architecture
Basic Components
Toggle Buttons
Menu & Toolbars
Borders
Containers
Pop Ups
Layout Managers
Advanced Containers
Bounded Range Components
List Model Components
Spinner Model Components
Text Based Componetns
The Tree Components
The JTable Component

Networking
TCP\IP in Java Overview
Serial TCP/IP Server
Concurrent TCP/IP Server

JDBC
Introduction to JDBC
Database Transactions
Simple Statements
Prepared Statements
Callable Statements
ResultSet Processing