Friday, April 26, 2013

Core Java Syllabus



Introduction to Java                         6 hrs

    • Evolution of Java
    • Object Oriented Programming Structure
    • Internet Programming & its requirements
    • Platform Independency & Portability
    • Security
    • Relation b/w JVM, JRE and JDK
    • Description of a Simple Java Program
    • Introduction to JAR format
    • Naming Conventions
2.
OOPs Implementation                         30 hrs

    • Classes and Objects
    • Defining attributes and methods
    • Implementing data encapsulation
    • Relation b/w objects and reference variables
    • Constructors and Anonymous block
    • Method Overloading
    • Static Data members, Block & methods
    • Understanding Memory structure
    • Stack
    • Heap
    • Class & Method area
    • Understanding Class loading & Execution flow
    • Static vs Dyanmic class loading
    • Implicit vs Explicit class loading
    • Sequence of operations performed at the time of class loading
    • Argument Passing Mechanism & Wrapper classes
    • Passing primitive arguments
    • Passing objects
    • Wrapper classes & their use
    • Usage of this keyword
    • Referencing instance members
    • Intra class constructor chaining
    • Method chaining
    • Inheritance & code reusability
    • Extending classes for code reusability
    • Usage of super keyword
    • Method Overriding
    • Object class and its role
    • Inheritance & Runtime polymorphism
    • Static & Dynamic binding
    • Inheritance and Is-A relation
    • Runtime polymorphism and generalization
    • Abstract classes & methods
    • final keyword
    • Interfaces and Role based Inheritance
    • Difference b/w Feature & Role based Inheritance
    • Difference b/w Static & Dynamic classing Environment
    • Difference b/w classes & interfaces
    • Use of interfaces in real scenarios
    • Implementing Has-A relation
    • Difference b/w Aggregation & Composition
    • Nested classes and their role
    • Inner classes
    • Anonymous Inner classes
    • Package & Scopes
      • Need of packages
      • Associating classes to packages
      • Understanding Classpath environment variable
      • import keyword and feature of static import
      • public, protected, private & default scope
      • Private Inheritance and its use
      • Examples of private inheritance
3.
Exception Handling                          6 hrs

    • Difference b/w exception and error
    • Exception Handling & Robustness
    • Common Exceptions and Errors
    • try and catch block
    • Exception handlers & importance of their order
    • throw keyword and its usage
    • throws keyword and its usage
    • Checked and Unchecked Exceptions
    • Role of finally
    • Creating User defined Exceptions
4.
MultiThreading in Java                      10 hrs

    • Multitasking and Multithreading
    • Thread based execution model of Java Applications
    • Relation b/w Runnable interface and Thread class
    • States of Thread
    • Implementing User threads
    • Thread synchronization & mutual exclusivity
    • Inter Thread communication and Thread scheduling
    • Understanding and using Monitor
    • Thread deadlock and Interrupting Threads
    • ThreadGroup and its use
    • Daemon Threads and their use
5.
Input Output Streams                        8 hrs

    • Streams & their advantages over conventional input output
    • Commonly used byte oriented streams
    • Commonly used character oriented streams
    • Reading & writing data from different streams
    • Redirecting Standard input & output streams
    • Serialization
    • Use of transient keyword
    • Role of serialversionUID
    • File class and File System Interaction
    • Scanner class
    • StreamTokenizer and StringTokenizer
6.
Networking                                  6 hrs

    • InetAddress class and Factory Design Pattern
    • Understanding socket and port
    • TCP/IP based networking using Socket & Server Socket
    • UDP based networking using DatagramSocket and DatagramPacket
    • HTTP based networking using URL and URLConnection
7.
Reflection                                  4 hrs

    • Understanding object representation of classes
    • Loading classes dynamically
    • Instantiating classes indirectly
    • Obtaining information of classes dynamically
    • Invoking methods indirectly
    • Referencing data members indirectly
    • Overriding access policy and referencing private members
8.
Collection Framework                        16 hrs

    • Role and Importance of Collection Framework
    • Use of List & Set based collection
    • Use of Iterator & ListIterator
    • Use of Maps
    • Searching elements in List, Hash and Tree based collections
    • Role of equals and hashCode() methods
    • Role of Comparable and Comparator interfaces
    • Thread safety and Vector
    • Difference b/w Enumeration and Iterator
    • Type safety and Generics
    • Common algorithms and Collections class
    • Using Properties class for managing properties files
9.
I18n or Internationalization                    4 hrs

  • Role of Locale class in i18n
  • Using NumberFormat class for applying number & currency formatting
  • Using DateFormat class for applying date & time formatting
Using ResourceBundle and properties files for internationalizing textual contents.

10.
Database Connectivity Using JDBC 4.x        10 hrs

    • Overview of native and ODBC Drivers
    • Introduction to JDBC
    • Type of JDBC drivers
    • Using different type of drivers
    • Defining properties based Connection Factory
    • Performing basic database operations
    • Insert
    • Delete
    • Update
    • select
    • PreparedStatement
    • Difference b/w Statement & PreparedStatement
    • Setting Query parameters
    • Executing Queries
    • CallabeStatement
    • Creating PL/SQL Stored procedures and functions
    • Creating Callable statements
    • Executing procedures & functions
    • Misc
      • Batch Updation
      • Transacting queries
      • Programmatic initialization of database
      • Scrollabe & Updatable Resultset
      • ResultSetMetaData
      • DatabaseMetaData
      • Connection Pooling and DataSource
      • Implementation of DAO design pattern


2 comments: