Course Outline
Review
- Inheritance and Interfaces
- Object References vs. Inheritance
- Polymorphism
- Static and Default Methods in Interfaces
- Collections and Generics
- Generics: Inheritance and Wildcards
- Implementing 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 Class
- Discovering Fields, Methods, and Constructors
- Accessing Fields and Invoking Methods
- Examining Arrays
Annotations
- Annotations in the Java API (@Override, @Deprecated)
- Defining Custom Annotations
Functional Programming
- Overview of Lambda Expressions
- Lambda Expressions and Functional Interfaces
- Practical Use of Lambda Expressions
- Working with Method References
The Stream API
- Streams and Collections
- Filtering Collections
- Chaining and Pipelining
Date/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
- Working With Exceptions
- Organizing Tests with JUnit
- Writing Fixtures: @Before and @After
- Test Suites and Additional Capabilities
- Overview of Mock Objects
Build Tools
- Ant Overview
- Maven Overview
Requirements
Participants should possess a solid understanding of the Java language and Object-Oriented Programming principles, including familiarity with packages, control flow structures, loops, fundamental concrete classes, and basic interfaces.
Testimonials (3)
That we got a complex overview also about the context - for example why do we need some annotations and what they mean. I liked the practical part of the training - having to manually run the commands and call the rest api's
Alina - ACCENTURE SERVICES S.R.L
Course - Quarkus for Developers
interaction through exercises and also projects sharing
Claudiu - MSG system
Course - Advanced Spring Boot
The extra information that was shared, the training was not straightforward groovy, which was nice.