Java Programming Training for Experienced Programmers

See Course Outline

Training for your Team

5
Days
  • Private Class for your Team
  • Online or On-location
  • Customizable
  • Expert Instructors

Training for Yourself

$2,125.00
or 5 vouchers
  • Live Online Training
  • For Individuals
  • Expert Instructors
  • Guaranteed to Run
  • 100% Free Re-take Option
  • 1-minute Video

Upcoming Classes

  • See More Classes

Please select a class.
Overview

This Java training course is intended for students with experience in a procedural or object-oriented language. It covers most Java syntax elements, including recent additions such as Generics and AutoBoxing. In addition to the fundamental library classes that would be needed in any Java program, it also covers several other important APIs, including Collections and Streams.

The class introduces the concept of objects as one of the first topics, in order that the later concepts are covered with an OO perspective. The material is based on Java 5 and 6, but most concepts would apply in 1.4 as well.

If you are new to object-oriented programming, you should take our Introduction to Java for New Programmers class instead.

Goals
  1. Learn how Java works.
  2. Understand the "write once, run anywhere" concept.
  3. Understand and learn how to create basic Java objects.
  4. Learn how to implement flow-control concepts in Java.
  5. Understand Java's package concept and create packages of Java classes.
  6. Understand Java arrays and write code to create and use arrays.
  7. Learn how to write Java classes using inheritance.
  8. Learn how to create and use interfaces.
  9. Understand and use the concept of polymorphism in an application
  10. Understand how Java's exception-handling mechanism works and learn how to apply exception-handling to Java applications.
  11. Understand and use the Java Logging API.
  12. Understand and use inner classes.
  13. Understand Generics and use them with the Collections API.
  14. Learn about Java's Streams concept, and how to appy that to files using text and binary data.
  15. Create and run JUnit tests for Java classes.
Outline
  1. Java Introduction
    1. Conventions in These Notes
    2. The Java Environment - Overview
    3. Writing a Java Program
    4. Obtaining The Java Environment
    5. Setting up Your Java Environment
    6. Creating a Class that Can Run as a Program
      1. The main() Method
    7. Useful Stuff Necessary to Go Further
      1. System.out.println()
    8. Exercise: Using an Integrated Development Environment
    9. Using the Java Documentation
  2. Java Basics
    1. Basic Java Syntax
      1. General Syntax Rules
      2. Java Statements
      3. Blocks of Code
      4. Comments
    2. Variables
      1. Declaring Variables
      2. Advanced Declarations
    3. Data
      1. Primitive Data Types
      2. Object Data Types
      3. Literal Values
    4. Constants and the final Keyword
    5. Mathematics in Java
      1. Basic Rules
      2. Expressions
      3. Operator Precedence
      4. Multiple Assignments
      5. Order of Evaluation
      6. Bitwise Operators
      7. Compound Operators
      8. Expressions that Mix Data Types: Typecasting
    6. Creating and Using Methods
      1. Creating Methods
    7. Variable Scope
    8. Exercise: Method Exercise
  3. Java Objects
    1. Objects
    2. Object-oriented Languages
    3. Object-oriented Programs
    4. Encapsulation
      1. OOP as a Messaging System
    5. Exercise: Object Definition
    6. Creating and Using an Instance of an Object
    7. References
      1. Reference Example
      2. Reference Expressions
    8. Defining a Class
      1. Access to Data
    9. More on Access Terms
    10. Adding Data Members to a Class
      1. Adding Function Members (Methods) to a Class
    11. Standard Practices for Fields and Methods
      1. Order of Elements within a Class
    12. Java Beans
    13. Bean Properties
    14. Exercise: Payroll01: Creating an Employee Class
    15. Constructors
    16. Instantiating Objects Revisited
    17. Important Note on Constructors
    18. Exercise: Payroll02: Adding an Employee Constructor
    19. Method Overloading
    20. Exercise: Payroll03: Overloading Employee Constructors
    21. The this Keyword
    22. Using this to Call Another Constructor
    23. Exercise: Payroll04: Using the this Reference
    24. static Elements
    25. The main Method
    26. Exercise: Payroll05: A static field in Employee
    27. Garbage Collection
    28. Java Packages
    29. Compiling and Executing with Packages
    30. Working with Packages
    31. Exercise: Payroll06: Creating an employees package
    32. Variable Argument Lists (varargs)
    33. Keyboard I/O Using the Console Class from Java 6
    34. Keyboard Input Prior to Java 6
    35. Exercise: Payroll07: Using KeyboardReader in Payroll
    36. String, StringBuffer, and StringBuilder
    37. Creating Documentation Comments and Using javadoc
      1. Javadoc Comments
    38. Exercise: Payroll08: Creating and Using javadoc Comments
    39. Primitives and Wrapper Classes
      1. Autoboxing and Unboxing
  4. Comparisons and Flow Control Structures
    1. Boolean-valued Expressions
    2. Comparison Operators
    3. Comparing Objects
    4. Conditional Expression Examples
    5. Complex boolean Expressions
    6. Simple Branching
    7. The if Statement
    8. if Statement Examples
      1. Absolute Value
      2. Random Selection
    9. Exercise: Game01: A Guessing Game
    10. Exercise: Payroll-Control01: Modified Payroll
    11. Two Mutually Exclusive Branches
      1. The if . else Statement
      2. Nested if . else Statements - Comparing a Number of Mutually Exclusive
      3. Options
    12. Exercise: Game02: A Revised Guessing Game
    13. Comparing a Number of Mutually Exclusive options - The switch Statement.167
      1. The switch Statement
      2. switch Statement Examples
    14. Exercise: Game03: Multiple Levels
    15. Comparing Objects
      1. Testing Strings for Equivalence
    16. Conditional Expression
      1. while and do . . . while Loops
      2. for Loops
      3. ForEach Loops
    17. Exercise: Payroll-Control02: Payroll With a Loop
    18. Exercise: Game04: Guessing Game with a Loop
    19. Additional Loop Control: break and continue
      1. Breaking Out of a Loop
    20. Continuing a Loop
    21. Classpath, Code Libraries, and Jar Files
      1. Using CLASSPATH
      2. Creating a jar File (a Library)
    22. Exercise: Creating and Using an External Library
    23. Compiling to a Different Directory
  5. Arrays
    1. Defining and Declaring Arrays
    2. Instantiating Arrays
    3. Initializing Arrays
    4. Working With Arrays
    5. Array Variables
    6. Copying Arrays
    7. Exercise: Using the args Array
    8. Exercise: Game-Arrays01: A Guessing Game with Random Messages211
    9. Arrays of Objects
    10. Exercise: Payroll-Arrays01: An Array of employees
    11. Enhanced for Loops - the For-Each Loop
    12. Multi-Dimensional Arrays
    13. Multidimensional Arrays in Memory
    14. Example - Printing a Picture
    15. Typecasting with Arrays of Primitives
  6. Inheritance
    1. Inheritance Examples
    2. Payroll with Inheritance
    3. Derived Class Objects
    4. Polymorphism
      1. Inheritance and References
      2. Dynamic Method Invocation
    5. Creating a Derived Class
    6. Inheritance Example - A Derived Class
    7. Inheritance and Access
    8. Inheritance and Constructors - the super Keyword
    9. Derived Class Methods that Override Base Class Methods
    10. Inheritance and Default Base Class Constructors
    11. The Instantiation Process at Runtime
      1. Inheritance and static Elements
    12. Example - Factoring Person Out of Employee
    13. Payroll-Inheritance01: Adding Types of Employees
    14. Typecasting with Object References
      1. More on Object Typecasts
      2. Typecasting, Polymorphism, and Dynamic Method Invocation
    15. More on Overriding
      1. Changing Access Levels on Overridden Methods
      2. Redefining Fields
    16. Object Typecasting Example
    17. Checking an Object's Type: Using instanceof
    18. Typecasting with Arrays of Objects
    19. Payroll-Inheritance02: Using the Employee Subclasses
    20. Other Inheritance-related Keywords
      1. abstract
      2. final
    21. Payroll-Inheritance03: Making our base classes abstract
    22. Methods Inherited from Object
  7. Interfaces
    1. Interfaces
    2. Creating an Interface Definition
    3. Implementing Interfaces
      1. Implementing Interfaces - Example
    4. Reference Variables and Interfaces
      1. Calling an Interface Method
    5. Interfaces and Inheritance
    6. Exercise: Payroll-Interfaces01
    7. Some Uses for Interfaces
      1. Interfaces and Event-Handling
      2. Interfaces and "Pluggable Components"
      3. Marker Interfaces
    8. Annotations
    9. Annotation Details
    10. Using Annotations
  8. Exceptions
    1. Exceptions
    2. Handling Exceptions
    3. Exception Objects
    4. Attempting Risky Code - try and catch
      1. Example - An Exception You Must Handle
      2. Using Multiple catch Blocks
    5. Guaranteeing Execution of Code - The finally Block
    6. Letting an Exception be Thrown to the Method Caller
    7. Throwing an Exception
    8. Payroll-Exceptions01: Handling NumberFormatException in
    9. Payroll
    10. Payroll-Exceptions01, continued
    11. Exceptions and Inheritance
    12. Exception Class Constructors and Methods
      1. Creating and Using Your Own Exception Classes
    13. Payroll-Exceptions02
    14. Rethrowing Exceptions
    15. Initializer Blocks
      1. Static Initializer Blocks
    16. Assertions
  9. Collections
    1. Collections
    2. Using the Collection Classes
    3. Using the Iterator Interface
    4. Creating Collectible Classes
      1. hashCode and equals
      2. Comparable and Comparator
    5. Collections in Java 5.0: Generics
    6. Bounded Types
    7. Extending Generic Classes and Implementing Generic Interfaces
    8. Generic Methods
    9. Variations on Generics - Wildcards
    10. Payroll Using Generics
  10. Inner Classes
    1. Inner Classes, aka Nested Classes
    2. Inner Class Syntax
    3. Instantiating an Inner Class Instance from within the Enclosing Class
    4. Inner Classes Referenced from Outside the Enclosing Class
    5. Referencing the Outer Class Instance from the Inner Class Code
      1. static Inner Classes
    6. Better Practices for Working with Inner Classes
    7. Enums
      1. Why Another Syntax Element for a Set of Constants?
      2. Defining an enum Class
      3. More Complex Enums
  11. Java Streams and Stream Classes
    1. Introducing Streams
    2. Input Stream Classes
    3. Output Stream Classes
    4. Using System.in
    5. File and Directory Information
      1. Improved Version
      2. Filename Filters
    6. Creating a Directory Listing
    7. Files and Streams
      1. Writing to a File
    8. Creating a File Copying Program
    9. Dealing with Binary Data
    10. Java Primitives as Binary Data
    11. Sending and Receiving Objects - Serialization
      1. Object I/O Examples
    12. Payroll-Streams01
  12. Unit Testing with JUnit
    1. Software Testing Concepts
    2. Unit Testing
    3. Using JUnit
      1. Creating a Test Case
    4. JUnit in Payroll
Class Materials

Each student in our Live Online and our Onsite classes receives a comprehensive set of materials, including course notes and all the class examples.

Class Prerequisites

Experience in the following is required for this Java Fundamentals class:

  • Significant Object-oriented Programming Experience in a language such as C++ or C#.
Preparing for Class

No cancelation for low enrollment

Certified Microsoft Partner

Registered Education Provider (R.E.P.)

GSA schedule pricing

89,954

Students who have taken Live Online Training

16,032

Organizations who trust Webucator for their training needs

100%

Satisfaction guarantee and retake option

9.58

Students rated our Java Programming Training for Experienced Programmers trainers 9.58 out of 10 based on 8 reviews

Excellent course materials, very well delivered. I'm definitely going to take more of their classes.

Steve Dubin, self
Newton MA

The class was highly valuable for me.

Kenneth Brewer, CareFusion
Chula Vista CA

I have taken a few online programming classes but Webucator is the only one where I feel 100% comfortable with the material after the class.

Elek Cseh, AvTrax
Denver CO

I have taken a few online programming classes but Webucator is the only one where I feel 100% comfortable with the material after the class.

Elek Cseh, AvTrax
Denver CO

Contact Us or call 1-877-932-8228