All HOTT courses are available face-to-face, remote-live, on-demand or on-site at your facility.
This hands on Java Programming course provides experienced COBOL programmers with the ability to utilize the structure and syntax of the object oriented Java programming language for both general business and Internet programming applications. The student is prepared to code, test, and execute Java programs making use of the facilities provided by the language. Because procedural programming uses a different paradigm than object oriented programming, this course concentrates on the application of basic object oriented concepts.
This class is intended for experienced COBOL programmers or programmers experienced in any procedural (non object-oriented) programming language. Students who already understand object-oriented programming techniques should attend the Java Programming course instead of this course.
Students will learn:
- Object oriented concepts
- Java syntax and control structures
- Data types and expressions
- Packages, classes, objects and methods
- arrays
- String handling
- Exception handling
- Inheritance and polymorphism
- Input and output stream processing
- GUI programming concepts
Course Prerequisites: Familiarity with and experience using COBOL or any procedural programming language.
Course Overview
Introduction
- Features of Java
- Java Security
- History and Origin of Java
- Alternative Internet Technologies
- Stand-alone Programs
- Applets
Objected Oriented Concepts
- Features of Object Oriented Languages
- Procedural (COBOL) vs. Object Oriented
- Data Abstraction
- Encapsulation
- Inheritance
- Polymorphism
- Messages
- Effects of OO Approach
- Basic OO Design (CRC Cards)
Java Basics
- Java Syntax
- Java Program Structure
- Simple and Compound Statements
- Comments and Readability
- Identifier Names
- Reserved Keywords
- Variable Declarations
- Native Data Types
- Basic Output
Expressions and Operators
- Operators
- Expressions
- Operators
- Assignment
- Increment/Decrement
- Type Cast
Class Methods and Constructors
- Class Methods
- Method Overloading
- this Reference
- Instance vs. Class Methods - Constructors and Finalizers
- Overloaded Constructors
- Static Initializers
- Finalizer Methods
Control Statements
- Conditional Statements
- Iterative Statements
- Comparison and Logical
- Operators
Inheritance and Polymorphism
- Inheritance
- Concepts and Terminology
- Syntax
- Member Access
- Constructors and Finalizers - Polymorphism
- Concepts and Terminology
- Syntax
- Overriding Methods - Interfaces
- Purpose for Interfaces
- Creating Interfaces
- Using Interfaces
Classes and Packages
- Packages
- Uses
- Importing
- Creating
- classpath Variable - Defining Classes
- Data Members
- Methods Members - Instantiating Classes
- Accessing Class Members
- Member Access Control
- Access Specifiers
Arrays and Strings
- References and Objects
- Arrays
- Declaring Arrays
- Accessing Array Elements
- Physical layout of Arrays
- Arrays of Objects
- Copying Arrays
- Multi-Dimensional Arrays - Strings
- String class Methods
- StringBuffer class Methods - Passing Arguments to main
Error and Exception Handling
- Exception Handling Model
- Exception Class Hierarchy
- Raising and Exception
- Dealing with Exceptions
- Defining Exception Classes
Input/Output Streams
- Standard Streams
- The java.io Package
- InputStream and OutputStream
- Reader and Writer - File I/O
- Filtered Streams
- Buffered Streams
- Data Streams
- Character Streams
Introduction to GUI Layout and Event Handling
- Overview of Graphical User Interface Components
- Containers and Layout Managers
- Event Handling
Note: Classes do not have fixed location. Prior to each class they examine the geographical location of the enrolled students and then select a venue that will provide most convenient overall access for the students. Classes are held in hotel conference rooms and exact location is determined 2 weeks prior to the course date.