Get in Touch

Course Outline

Core Concepts Review

  • Inheritance and Interfaces
  • Object References Versus Inheritance
  • Polymorphism
  • Static and Default Methods in Interfaces
  • Collections and Generics
  • Advanced Generics: Inheritance and Wildcards
  • Defining Custom Generic Types

Design Patterns

  • Object Creation Techniques
  • Static Methods and Fields
  • The New Operator
  • Creational Design Patterns
  • Inheritance Versus Composition: Pros and Cons
  • The Composite Pattern
  • Inner Classes

Reflection

  • The Class Class
  • Locating Fields, Methods, and Constructors
  • Accessing Fields and Invoking Methods
  • Inspecting Arrays

Annotations

  • Annotations in the Java API (e.g., @Override, @Deprecated)
  • Creating Custom Annotations

Functional Programming

  • Overview of Lambda Expressions
  • Lambda Expressions and Functional Interfaces
  • Practical Application of Lambda Expressions
  • Working with Method References

The Stream API

  • Streams and Collections
  • Filtering Collections
  • Chaining and Pipelining Operations

Date and Time API

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

JUnit Basics

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

Build Tools

  • Ant Overview
  • Maven Overview

Requirements

Participants must possess a solid understanding of Java and Object-Oriented Programming (OOP). Key prerequisites include familiarity with packages, control structures, loops, fundamental concrete classes, and basic interfaces.

 7 Hours

Number of participants


Price per participant

Testimonials (3)

Upcoming Courses

Related Categories