Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Abstract Class
- Principles for declaring and implementing abstract classes
- Common challenges encountered when working with abstract classes
The Role of Classes, Abstract Classes, and Interfaces in the Application Model
- Levels of object-oriented abstraction in Java
- The complete object model in Java
- Object-oriented design patterns that leverage interfaces and abstract classes to enhance flexibility and decouple subsystems
- Utilizing abstract classes to extract common functionality while maintaining the flexibility provided by interfaces
The Role of Static and Dynamic Objects in the Application Model
- Static Java classes and the dynamic characteristics of these classes
- Understanding the functional distinctions between static and dynamic entities in Java, their typical use cases, and best practices for designing solutions based on static and dynamic constructs
- Introduction to design patterns
- Introduction to the Factory design pattern
Operations with Primitive Types and Wrapper Classes
- Key facts and techniques for extending the use of primitive types within the Java object model.
- The role of wrapper classes for primitive types and their typical applications in software
Special Java Objects: String, StringBuilder, and StringBuffer
Review of the fundamental properties of the String class and the handling of String objects by the virtual machine.
The use of buffer classes and operations on strings.
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
- Tokenization, searching, and pattern matching for string types
I/O Operations
- A detailed discussion of Java I/O mechanisms, including streaming classes, Writer and Reader classes, and stream wrapper and buffering classes.
- Opening, closing, and writing to files and sockets
Inner Classes: Detailed Discussion
- How to implement and use inner classes and anonymous classes in Java
Threads: Detailed Discussion, Applications, and Challenges
- Discussion of threading topics ranging from the abstraction mechanism of threads in Java to thread synchronization and connecting threads in a group, including an exploration of common thread-related issues such as deadlocks
Java Reflection: Introduction and Application
- Introduction to the Java reflection mechanism
- Topics include implementing reflection in Java, loading and executing class methods, instantiating classes, and exploring class structures
Java Serialization
- Introduction to Java object serialization
- Understanding what serialization is, how to serialize objects, handling interdependent objects, and avoiding common problems associated with these scenarios
- Typical use cases, illustrated with examples such as serialization and RMI/CORBA
Requirements
Knowledge of the topics covered in the Java Fundamentals course.
28 Hours
Testimonials (1)
- The course progression (from JVM internals to more high-level topics) - Some insights from practical exercises - Visual style (not some presentation, but a nicely styled page)