Jumpstart to Java 9 for Object Oriented (OO) Developers (TT2101J9)
Jumpstart to Java 9 for Object Oriented (OO) Developers (TT2101J9) Course Details:
Jumpstart to Java 9 for Object Oriented (OO) Developers is a three-day, fast-paced, quick start to Java 9 training course geared for developers who have prior working knowledge of object-oriented programming languages such as C++. Throughout the course students learn the best practices for writing great object-oriented programs in Java 9 using sound development techniques, new improved features for better performance, and new capabilities for addressing rapid application development.
Students who attend Jumpstart to Java 9 for Object Oriented (OO) Developers will leave this course armed with the required skills to develop solid object-oriented applications written in Java, using sound coding techniques and best coding practices. Geared for developers with prior OO development experience in languages such as C#, C++ or SmallTalk, this course will teach students everything they need to become productive in essential Java programming.
Call (919) 283-1674 to get a class scheduled online or in your area!
Session: Java: A First Look
Lesson: The Java Platform
- Java Platforms
- Lifecycle of a Java Program
- Responsibilities of JVM
- Documentation and Code Reuse
Lesson: Using the JDK
- Setting Up Environment
- Locating Class Files
- Compiling Package Classes
- Source and Class Files
- Java Applications
Session: Getting Started with Java
Lesson: Writing a Simple Class
- Classes in Java
- Class Modifiers and Types
- Class Instance Variables
- Primitives vs. Object References
- Creating Objects
Lesson: Adding Methods to the Class
- Passing Parameters into Methods
- Returning a Value from a Method
- Overloaded Methods
- Constructors
- Optimizing Constructor Usage
Session: Essential Java Programming
Lesson: Language Statements
- Operators
- Comparison and Logical Operators
- Looping
- Continue and Break Statements
- The switch Statement
- The for-each() Loop
Lesson: Using Strings
- Strings
- String Methods
- String Equality
- StringBuffer
- StringBuilder
Lesson: Specializing in a Subclass
- Extending a Class
- Casting
- The Object Class
- Default Constructor
- Implicit Constructor Chaining
Lesson: Fields and Variables
- Instance vs. Local Variables: Usage Differences
- Data Types
- Default Values
- Block Scoping Rules
- Final and Static Fields
- Static Methods
Lesson: Using Arrays
- Arrays
- Accessing the Array
- Multidimensional Arrays
- Copying Arrays
- Variable Arguments
Lesson: Java Packages and Visibility
- Class Location of Packages
- The Package Keyword
- Importing Classes
- Executing Programs
- Java Naming Conventions
Session: Object Oriented Development
Lesson: Inheritance and Polymorphism
- Polymorphism: The Subclasses
- Upcasting vs. Downcasting
- Calling Superclass Methods from Subclass
- The final Keyword
Lesson: Interfaces and Abstract Classes
- Separating Capability from Implementation
- Abstract Classes
- Implementing an Interface
- Abstract Classes vs. Interfaces
Session: Exception Handling
Lesson: Introduction to exception handling
- Exception Architecture
- Throwing Exceptions
- Checked vs. Unchecked Exceptions
Lesson: Exceptions
- Creating Your Own Exceptions
- Handling Multiple Exceptions
- Automatic Closure of Resources
Session: Java Developer's Toolbox
Lesson: Utility Classes
- Wrapper Classes
- Autoboxing/Unboxing
- Working with Dates
- Enumeration Syntax
- Using Static Imports
Session: Advanced Java Programming
Lesson: Introduction to Generics
- Generics and Subtyping
- Bounded Wildcards
- Generic Methods
Lesson: Lambda Expressions and Functional Interfaces
- Functional vs OO Programming
- Lambda Expression Syntax
- Functional Interfaces
- Type Inference
- Method references
Session: Working with Collections
Lesson: The Collection API
- Characterizing Collections
- Collection Interface Hierarchy
- The Set, List and Queue Interfaces
- Map Interfaces
Lesson: Using Collections
- Collection Sorting
- Comparators
- Using the Right Collection
- Lambda expressions in Collections
Session: Stream API
Lesson: Streams
- Processing Collections of data
- Filtering and sorting collection data
- Find elements in Stream
- Numeric Streams
- Sources for using Streams
Lesson: Collectors
- Creating Collections from a Stream
- Group elements in the Stream
- Multi-level grouping of elements
- Partitioning Streams
Session: The Java Module system (Jigsaw)
Lesson: Introduction to the Module System
- Introduce Project Jigsaw
- Classpath and Encapsulation
- The JDK internal APIs
- Java 9 Platform modules
- Defining application modules
- Define module dependencies
- Implicit dependencies
- Implied Readability
- Exporting packages
*Please Note: Course Outline is subject to change without notice. Exact course outline will be provided at time of registration.
Working within in an engaging, hands-on learning environment, guided by our expert team, attendees will learn to:
- Understand not only the fundamentals of the Java language, but also its importance, uses, strengths and weaknesses
- Understand the basics of the Java language and how it relates to OO programming and the Object Model
- Learn to use Java exception handling features
- Work with the Java 9 modular system (Project Jigsaw)
- Understand and use classes, inheritance and polymorphism
- Understand and use collections, generics, autoboxing, and enumerations
- Process large amount of data using Lambda expressions and the Stream API
Specific Java 9 features that are covered in the course include:
- The Modular system (Project Jigsaw)
- Private methods in interfaces
Attendees should have a working knowledge of developing OO software applications.
This is an introductory- level Java course, designed for experienced developers who wish to get up and running with Java, or who need to reinforce sound Java coding practices, immediately.