Java is a popular and powerful language. Although comparatively simple in its language structure, there are a number of subtleties that can trip up less experienced programmers. It is based on C, and the terse nature of C may be unfamiliar to students with some previous experience programming in languages such as COBOL or Visual Basic who do not have experience with C or C++. And, of course, Java is object-oriented.
The five-day timeline of this course explicitly targets less experienced programmers, providing them with a thorough step-by-step introduction to Java programming. It lays a firm foundation for further study of Java. There are a large number of example programs and many labs. The course software also includes an optional overlay of workspace and project files to support use of the Eclipse IDE in the classroom. (This requires that the instructor be experienced in use of Eclipse and able to walk students through basic tasks in the IDE.)
An important thrust of this course is to teach programming from an object-oriented perspective. It is often difficult for programmers trained originally in a procedural language to start "thinking in objects." This course introduces object-oriented concepts very early, and Java is developed in a way that leverages its object orientation. Most of the course emphasizes simple classes without inheritance. The last chapter introduces inheritance and polymorphism, along with interfaces and collections.
This revision of the course targets the Java 7 language and Core API. See our course catalog for training explicitly geared to earlier versions of Java, going back as far as J2SE 1.4.2. To read more about different versions of Java and for help deciding on which version of this course to use, see "Java Versions and Terminology Demystified"
Java Training Prerequisites
Good general problem solving skills. Some previous experience programming in a procedural language is essential.
Java Training Course duration
5 Days
Java Training Learning Objectives
After completing this course a student should:
Learn the basic principles of object-oriented programming
Learn the essentials of the Java programming language
Acquire the skills needed to design, code and debug computer programs in the Java language
Java Training Course outline
Chapter 1. What is Java?
Object Orientation
Java Language
Java Virtual Machine
Java Libraries
World Wide Web and Java
Java Platforms
Java as a First Programming Language
Chapter 2. First Java Programs
Hello, World
Program Structure
Output in Java
Variables and Expressions
Calculations Using Java
Chapter 3. Introduction to Objects
Object Models
Classes and Objects
State and Behavior
Input in Java
InputWrapper Class
Packages
Chapter 4. Data Types and Operators
Strong Typing
Integer Data Types
Floating Point
Conversions Between Types
Arithmetic Operators
Doing Math in Java
Precedence
Errors in Integer Arithmetic
Chapter 5. Booleans and Enumerations
Boolean Variables
Logical and Relational Operators
If Tests
Compound Statements
Switch Statement
Enumerated Types
Chapter 6. Loops and Program Flow
While Loops
Quitting Infinite Loops
Curly Braces and Indenting
Sentinels and Counters
For Loops
Loops and If Tests Together
Nested If Statements
Chapter 7. Objects and Classes
Structured Data
Classes
References
Instantiating an Object
Assignment of Objects
Initialization
Garbage Collection
Methods
Public vs. Private
Encapsulation
Constructors
Formatted Output
Chapter 8. Characters and Strings
Char Data Type
Character Codes
ASCII and Unicode
String Class
String Input and Output
String Methods
Chapter 9. Modular Programming
Monolithic Programs
Static Variables and Methods
Functional Modularity
Object Modularity
Top-Down and Bottom-Up Development
Pass-By-Value and Pass-By-Reference
Nested Classes
Chapter 10. Arrays
One Dimensional Arrays
Subscripts
Initializing Arrays
Arrays and the For-Each Loop
Copy and Assignment
Arrays of Objects
Multidimensional Arrays
Searching
Chapter 11. Bit Operations
Bitwise Operators
Truth Tables
Hexadecimal Notation
Shifting and Masking
Chapter 12. Exception Handling and More Flow Control
Exceptions
Errors in Integer Arithmetic
Floating Point Operaations
I/O Exceptions vs. Runtime Exceptions
Exception Methods
Using finally
try-with-resources
Break
Continue
Do
Chapter 13. Advanced Java Features
Reusable Software Components
Abstraction
Inheritance
Inheritance Hierarchies
Polymorphism
Abstract Classes
Interfaces
Collections
Iterators
Auto-Boxing
Hardware/Software Requirements
Hardware – minimal Core 2 Duo, 1.8 GHz, 1 gig RAM, 500 meg disk space.
Hardware – recommended Core 2 Duo, 2.8 GHz, 4 gig RAM, 500 meg disk space.
Operating system Tested on Windows 7. Course software should be viable on all systems which support a Java SE 7 Developer's Kit.