Core Java

1. OOP’s Introduction
  • Evolution of Programming Languages
  • Introduction of OOPS
  • Case study
  • 4 to be discussed by trainer in class
2. Java Technology Introduction
  • Features of java
  • Introduce JDK, JRE, JVM
  • JVM Big Picture and Architecture
  • Introduction to Classes, methods and their naming conventions
  • main() method
3. Basic Java
  • Operators
  • Keywords
  • Conditional constructs (If-else , else-if ladder, nested if –else)
  • Iteration constructs (loops)
  • Selection constructs (Switch case)
  • Array(single , multi) for primitive data types
  • Enhance for loop
4. Basic Java Continued.
  • Introduction of JavaBean Specification
  • Getter setter method
  • Constructor
  • Object creation process(use of “new” keyword)
  • “this” keyword use
  • Coding standards and tools
  • Introduce SONAR plug-in
  • JVM Memory Architecture
  • Array with User Defined Types
  • Garbage collection process
5. Java packages and eclipse IDE introduction
  • Different type of variables and their scope(local, instance, class)
  • Static and instance blocks
  • Static method and instance methods
  • Packages (introduction to Pre define API and java documentation )
  • User define package creation and introduction to classpath(using bat file)
  • Introduction to Eclipse IDE, local history, debug
6. Relationship in java
  • Has-A relationship in java(Containment type)
  • Composite Has-A Relationship
  • Aggregate Has-A Relationship
  • Is-A relationship( Inheritance)
  • Public , protected , default , private scope
  • “super” keyword use
  • Method overriding (dynamic polymorphism)
  • Static and Dynamic binding
  • Implicit Vs Explicit casting
  • Abstract keyword use(class, method)
  • final keyword use
  • Object class method’s introduction and its methods(toString, hashCode, equals, finalize)
7. Interfaces programming in java
  • Introduction of Interface
  • Difference between Abstract class and Interface
  • Marker interface (Clonable)
  • Cloning in java(shadow and deep cloning )
8. Miscellaneous topics
  • Inner classes
  • String class methods(StingBuffer/StringBuilder )
  • Enums
  • Wrapper classes
9. Annotation and Reflection API
  • Introduction to Annotation
  • Marker Annotation(@SupressWarning,@Override , @Deprecated )
  • Custom Annotation
  • Custom java documentation
  • Introduction to Reflection API
  • “Class” class use(reflect package use)
10. Exception Handling
  • Problem with C style error handling
  • Introduction to OO type Exception handling
  • Different types of exceptions in java(Error, Runtime, Checked)
  • Try , catch, throws , throw , finally keyword use
  • User define exceptions.
11. Collection API
  • Introduction and need of Generic programing
  • Introduction to Collection API(List ,Set) and implementations – ArrayList, Vector, Stack, HashSet, LinkedHashSet, TreeSet, LinkedList
  • Sorting, Iteration
  • Comparable, Comparator
  • Importance of hashCode() & equals() methods
  • Introduction to Map API and implementations – HashMap, LinkedHashMap, TreeMap, Properties, HashTable, Queue
12. IO classes and Streams
  • Introduction to IO programming
  • Different types of Streams(byte , character )
  • File, FileInputStream, FileOutputStream, FileReader, FileWriter, RandomAccessFile, DataInputStream, DataOutputStream, BufferedReader, BufferedWriter
  • Serialization process with example
    • Super class, static variables, Containment
  • Use of “transient” key word
13. Multi-threading
  • Difference between multithreading and multiprocessing – 1 hr
  • Introduction to threading API(Thread class , Runnable interface)-2
  • Thread class Methods (start, join, run, sleep, yield etc.)-2
  • Synchronization process-2
  • Inter thread communication
  • wait , notify , notifyall methods use
  • Introduction to ThreadPoolExecuter class
14. JDBC Programming (1.5 days)
  • Introduction to JDBC API
  • Introduction to Drivers(I,II,II,IV)
  • Introduction to JDBC Interface (Connection , Statement , PrepareStatment , ResultSet)
  • Connection pooling (DBCP)