Java Fundamentals Training Course with Eclipse

Duration: 5 days
Course code: SS-JAV-007

  • Application Developers
  • Programmers
  • System Designers

Experience with at least one programming language is assumed


The course imparts the Java and Eclipse skills necessary for productive Java developers. After providing a solid foundation of the Java programming language, this course presents intermediate and advanced elements of Java, its libraries, and the Eclipse development environment. This course moves well beyond a basic introduction to Java and Object-Oriented programming, and into the key components of the language, rich libraries, and the tooling.

This course can be delivered using other development tools, such as IBM Rational Application Software Developer (RAD) or IBM Rational Software Architect (RSA).


SciSpike's goal is to transfer as much knowledge as possible from the classroom to the workplace. This course has been carefully designed to ease the student into new concepts with the use of lots of exercises, labs, and sample code. At the end of this course, students should:

  • Have a firm understanding of the Java architecture
  • Identify basic concepts of Object Oriented design
  • Be able to implement Object Oriented based applications
  • Be able to design and implement effective Java programs
  • Be able to effectively use the Eclipse IDE
  • Be able to build multi-threaded programs using Java
  • Have the necessary foundation to pursue advanced topics in Java

Outline for Java Fundamentals with Eclipse Training Course

Java Basics

  • Java Object Model
  • Class definitions
  • Class and instance variables
  • Basic data types

Java Classes

  • Inheritance and code reuse
  • Data encapsulation and access protection
  • Compilation and the Java run-time environment
  • The "String" and "System" classes
  • Basic Java application


  • Workspace
  • Java Project
  • Java Perspective
  • Java Editor
  • Using the Class and Interface Wizards
  • Java Debugger
  • Configuring the run-time
  • Executing Java Programs
  • Packaging Java Applications

Java Interfaces

  • Interfaces and contracts
  • Java Interface
  • De-coupled design
  • Using the factory design pattern
  • Implementing multiple inheritance

Namespaces and Java Packages

  • Name spaces
  • Standard Java conventions
  • File system dependencies
  • Access protection

Error Handling and Exceptions

  • Java Exceptions
  • Separating business logic from error handling logics
  • Using "try", "catch" and "finally"
  • Throwing exceptions
  • Checked and unchecked exceptions
  • Navigating the stack trace
  • Repackaging and re-throwing exceptions

Threads - A Quick Introduction

  • Concurrent and parallel programming
  • Deadlocks
  • Thread Class
  • Managing groups of threads using Thread Group
  • Managing thread priorities
  • Thread Synchronization
  • Designing cooperating multithreaded applications
  • Using the "Runnable" interface

Java Class Libraries

  • JSE Class Library Architecture
  • Naming conventions
  • Java Utility Package (java.util)

Collections Library

  • Storage Structures (Array, ArrayList,Vector, HashMap etc.)
  • Aggregation operations

Input and Output

  • The class Library
  • Input and Output structure
  • Handling textual data with "Reader" and "Writer" streams
  • File System I/O


  • The case for Generics
  • Parameterized classes and methods
  • Nested and Multi Generics
  • Wildcards, Erasure and Casting

Java Database Connectivity (JDBC)

  • Fundamentals of Database Programming
  • Using the JDBC API
  • JDBC connectivity types
  • Loading JDBC drivers
  • Connection
  • Statements
  • ResultSets
  • Meta Data

Comments are closed.