Course Outline

Review

  • Inheritance and Intefances
  • Object References vs Inheritence
  • Polymorphism
  • Interface Static and Default Methods
  • Collections and Generics
  • Generics (Inheritance, Wildcards)
  • Writing Generic Types

Design Patterns

  • Object Creation
  • Static methods and fields
  • new Operator
  • Creation Patterns
  • Inheritance vs Composition / Pros and Cons
  • Composite Pattern
  • Inner Classes

Reflection

  • The class called Class
  • Finding Fields, Methods, and Constructors
  • Accessing Fields, Invoking Methods
  • Examining Arrays

Annotations

  • Annotations in the Java API (@Override, @Deprecated)
  • Defining Annotations

Functional Programming

  • Lambda Expression Overview
  • Lambda Expressions and Functional Interfaces
  • Using Lambda Expressions
  • Working with Method References

The Stream API

  • Streams and Collections
  • Filtering Collections
  • Chaining and Pipelining

Date/Time API

  • Legecy APIs
  • The Date/Time API (JSR 310)
  • Date-Based and Time-Based Events
  • Timestamps, Periods, and Durations
  • Performing Calculations
  • Formatting
  • Localization / Time Zones

JUnit Basics

  • JUnit Overview, Test Driven Development
  • Tests and Assertions
  • Working With Exceptions
  • Organizing Tests with JUnit
  • Writing Fixtures - @Before, @After
  • Test Suites, and Other Capabilities
  • Mock Objects Overview

Build Tools

  • Ant Overview
  • Maven Overview

Requirements

Knowledge about Java langauge and OOP. Participatns needs to know packages, control flows and loops, basic concrete classes and basic interfaces.

 7 Hours

Testimonials (3)

Related Categories