Course Description
Gentle Java
OVERVIEW
Gentle Java and OO Development is geared to audiences with
no background in Object-Oriented programming or Java. It uses a steady pace and
numerous hands-on labs to provide an easy entry into the world of Java and OO
Programming. Java is one of the most important programming languages used
today, and its correct usage is a critical part of many systems being written
now. The basics of the language are relatively easy, but the challenge lies in
learning how to use it well. This is especially true regarding the
Object-Oriented nature of Java, which for many developers is a new way of
approaching system design and construction. This course covers the core OO and
Java concepts that developers need to use the Java programming language to
create well designed Java programs. It focuses on key OO capabilities and how
to use them in Java. This includes material on creating well designed Java
classes, using encapsulation, building more complex functionality with
composition, and using inheritance to share functionality and create
specialized types. This course is suitable for environments using either Java
5, Java 6, or Java 7. The material includes coverage of all current Java
capabilities that are within the scope of the material, including new Java 7
capabilities such as strings in switch statements, and Multi-catch. It also
stresses the use of good coding practices for all the examples and labs. All
labs are doable in any of the supported Java environments. This course is
available for most IDEs, such as Eclipse and IBM RAD. This course draws on our
extensive experience to provide a solid understanding of the concepts and
practices needed to write good object oriented programs in Java. Be prepared to
work hard and learn a great deal! This course can be followed by our
Intermediate Java course. The course can be held on-site & customized to
fit your needs. All labs can be done with the Eclipse IDE or a simple editor,
and the lab instructions include detail
Outline:
•Lesson 1 - A First Look
◦A Simple Java Class
◦Java’s “Hello World” Program
•Lesson 2 - Java Basics
◦Language and Platform Features
◦Program Life Cycle
◦The Java SE Development Kit (JDK)
•Lesson 3 - Class and Object Basics
◦The Object Model and Object-Oriented Programming
◦Classes, References, and Instantiation
◦Adding Data to a Class Definition
◦Adding Methods (Behavior)
•Lesson 4 - More on Classes and Objects
◦Accessing data, the "this" variable
◦Encapsulation and Access Control, public and private Access
◦Constructors and Initialization
◦static Members of a Class
◦Scopes, Blocks, References to Objects
•Lesson 5 - Flow of Control
◦Branching: if, if-else, switch
◦Iteration: while, do-while, for, break, continue
•Lesson 6 - Strings and Arrays
◦String, StringBuffer, StringBuilder
◦Arrays, Primitive Arrays, Arrays of Reference Types
◦varargs
•Lesson 7 - Packages
◦Package Overview - Using Packages to Organize Code
◦import statements
◦Creating Packages, package Statement, Required Directory
Structure
◦Finding Classes, Packages and Classpath
•Lesson 8 - Composition and Inheritance
◦Using Composition to Deal With Complexity
◦Composition/HAS-A, Delegation
◦Using Inheritance and Polymorphism to share commonality
◦IS-A, extends, Inheriting Features, Overriding Methods,
Using Polymorphism
◦Class Object
◦Abstract Classes
•Lesson 9 - Interfaces Overview
◦Using Interfaces to Define Types
◦Interfaces and Abstract Classes
•Lesson 10 - Exceptions
◦Exceptions and the Exception Hierarchy
◦try and catch
◦Handling Exceptions
◦Program Flow with Exceptions
◦finally
•Lesson 11 - JDBC
◦JDBC basics
◦JDBC Architecture
◦Using JDBC drivers & DriverManager
◦Class Connection and connecting to a database
◦Class Statement and executing SQL statements
◦Other statement types
•Lesson 12 - Java Collections and Generics
◦The Collections Framework and its API
◦Collections and Java Generics
◦Collection, Set, List, Iterator
◦Autoboxing
◦for-each Loop
•Lesson 13 - Additional Java Features
◦Type-safe Enums
◦Additional Features in Java 6 and Java 7