Java Training Overview
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 6.0 version of the Java language and Core API; but it is equally applicable to Java 5 and groups looking for Java training who know they'll be using Java 5 are encouraged to use this course. For training within the Java 1.4 environment, please see version 1.4.1 of this course; 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
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
2 . First Java Programs
- Hello, World
- Program Structure
- Output in Java
- Variables and Expressions
- Calculations Using Java
3 . Introduction to Objects
- Object Models
- Classes and Objects
- State and Behavior
- Input in Java
- InputWrapper Class
- Packages
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
5 . Booleans and Enumerations
- Boolean Variables
- Logical and Relational Operators
- If Tests
- Compound Statements
- Switch Statement
- Enumerated Types
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
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
8 . Characters and Strings
- Char Data Type
- Character Codes
- ASCII and Unicode
- String Class
- String Input and Output
- String Methods
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
10 . Arrays
- One Dimensional Arrays
- Subscripts
- Initializing Arrays
- Arrays and the For-Each Loop
- Copy and Assignment
- Arrays of Objects
- Multidimensional Arrays
- Searching
11 . Bit
Operations
- Bitwise Operators
- Truth Tables
- Hexadecimal Notation
- Shifting and Masking
12 . Exception
Handling and More Flow Control
- Exceptions
- Errors in Integer Arithmetic
- Floating Point Operaations
- I/O Exceptions vs. Runtime Exceptions
- Named Exceptions
- Exception Methods
- Break
- Continue
- Do
13 . Advanced
Java Features
- Reusable Software Components
- Abstraction
- Inheritance
- Inheritance Hierarchies
- Polymorphism
- Abstract Classes
- Interfaces
- Collections
- Iterators
- Auto-Boxing
Appendix A. Learning Resources
Hardware/Software Requirements
Hardware Requirements
- 500MHz, 128 meg RAM, 500 meg HD.
- 1.5gHz, 512 meg RAM, 1 gig HD.
- Minimum of 32 MB memory
Software Requirements
- All free downloadable tools.
Operating system
- Tested on Windows XP Professional. The course software should be viable on all Windows or Linux systems which support a Java 6 Developer's Kit.
|