Course Outline
Abstract Classes
- Principles of declaration and implementation for abstract classes
- Common challenges encountered when working with abstract classes
The Role of Classes, Abstract Classes, and Interfaces in Application Architecture
- Levels of object-oriented abstraction in Java
- The comprehensive object model in Java
- The programmatic model emphasizing interfaces and abstract classes to enhance flexibility and decouple subsystems from one another in their implementation
- Utilizing abstract classes to extract shared functionality while leveraging the flexibility offered by interfaces
The Role of Static and Dynamic Objects in Application Architecture
- Static Java classes and the dynamic properties associated with these classes
- Distinguishing between the functionality of both entity types in Java, along with typical use cases and best practices for designing solutions based on static and dynamic Java entities
- Introduction to design patterns
- Introduction to the Factory design pattern
Operations with Primitive Types and Wrapper Classes
- Key facts and techniques for extending the utility of primitive types within the Java object model
- The role of wrapper classes for primitive types and their typical applications within applications
Special Java Objects: String, StringBuilder, and StringBuffer
Review of the String class's basic properties and an analysis of how the virtual machine handles String objects.
Utilization of buffer classes and operations on character sequences.
Formatting, Parsing, and Regular Expressions
- Introduction to regular expressions in Java
- Discussion of both basic techniques for handling regular expressions (using the String class) and advanced techniques utilizing dedicated classes for these constructs
- Tokenization, search, and pattern matching for string types
I/O Operations
- A detailed examination of Java I/O mechanisms, including class streaming, Writer and Reader classes, as well as class wrappers and Java stream buffering
- Opening, closing, and writing to files and sockets
Inner Classes: Detailed Discussion
- Exploration of the implementation and usage of inner classes in Java, including anonymous classes
Threads: Detailed Discussion, Applications, and Challenges
- Discussion on thread topics ranging from the thread abstraction mechanism in Java to thread synchronization and connecting threads within a group, presenting and discussing common pool-related problems such as deadlocks
Java Reflection: Introduction and Application
- Introduction to the Java reflection mechanism
- Topics include the implementation of reflection in Java, loading and invoking class methods, class instantiation, and exploring class structures
Java Serialization
- Introduction to Java object serialization
- Understanding what serialization is, how to serialize objects, handling dependent objects, and avoiding common issues associated with this functionality
- Typical use cases, including examples with RMI and CORBA
Requirements
Completion of the Java Fundamentals course or equivalent knowledge of its covered topics.
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.