Gentle Java and OO Development training 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 Java 5, Java 6, or Java 7. The material includes coverage of all the new Java capabilities, such as Generic Collection classes, and clearly points out which capabilities are supported in which environment. All labs are doable in any of the supported Java environments.
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 detailed directions on both environments.
Objectives:
- Understand Java’s importance, uses, strengths and weaknesses
- Understand Java language basics
- Write, compile, and run Java programs
- Understand the Object Model and Object Oriented Programming
- Understand and use classes, inheritance, polymorphism
- Create well designed classes and use them in your Java programs
- Use composition and delegation to create objects from other objects
- Understand & use packages to organize code
- Learn good Java coding style
- Create well structured Java programs
- Compile and execute programs with the Sun Java 2 development tools and with an Integrated Development Environment (IDE) of your choice
- Use the newest features of Java
Course Features
- Lectures 0
- Quizzes 0
- Duration 4 Days
- Skill level All levels
- Language English
- Students 6
- Assessments Yes
Java Basics
- Java Overview
- Java’s “Hello World” Program
- Language and Platform Features
- Program Lifecycle
- The Java Software Development Kit (JDK)
- Basic Java concepts and syntax (as needed)
- LABS:
- Hello World: A Simple Application
- Basic Java Programming
Class and Object Basics
- Object-Oriented (OO) Programming Overview
- The Object Model
- Classes and Data Members
- Object References and Creating Objects
- LABS:
- Exploring Types
- Identity and Object References
- Defining and Using Classes and Objects
- Instance Variables
More on Classes and Objects
- Working with Methods and Data, Method Overloading
- Access Protection, public and private Access
- Constructors and Initialization
- static (or Class) methods
- Garbage Collection, the finalize() Method
- LABS:
- Using Methods and Encapsulation
- Writing and Using Constructors
- [Optional] Static Members
- Using the Debugger
Flow of Control
- Branching Statments
- logical operators
- if-else, switch,
- Iteration Statements
- while, do-while, for
- break and continue
- LABS:
- Flow of Control, Data Validation
Strings and Arrays
- String, StringBuffer, and StringBuilder
- Arrays
- LABS:
- Using Strings and Arrays
Packages – Managing Complexity
- Packages Overview – Using packages to organize code
- import Statement
- Creating Packages, and Package Directory Structure
- Classpath and Finding Classes
- LAB: Using Packages to Organize Code
Composition and Inheritance
- Using Composition to Create complex classes
- Composition/HAS-A, Delegation
- Using Inheritance to Derive Specific Types From General Types
- Overriding Methods, Using Polymorphism
- Class Object
- Abstract Classes
- LABS:
- Using Composition
- Using Inheritance to Specialize Classes
Overview of Additional Concepts
- Interfaces
- Exceptions
- JDBC
- Collections Framework
- Java 6 & 7 – What’s New