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 Classes
- Principles for declaring and implementing abstract classes
- Common issues encountered when working with abstract classes
The Role of Classes, Abstract Classes, and Interfaces in Application Design
- Levels of abstraction in Java object-oriented design
- The comprehensive Java object model
- Programmatic approaches utilizing interfaces and abstract classes to enhance flexibility and decouple subsystems from one another
- Utilizing abstract classes to extract common functionality while extending flexibility through interfaces
The Role of Static and Dynamic Objects in Application Design
- Static Java classes and the dynamic attributes associated with these classes
- Distinguishing the functionality of both entity types within Java, their 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 use of primitive types within the Java object model
- The role of wrapper classes for primitive types and their typical application scenarios
Special Java Objects: String, StringBuilder, and StringBuffer
Review of the fundamental properties of the String class and the handling of String objects by the Java Virtual Machine
Usage of buffer classes and manipulation of character sequences
Formatting, Parsing, and Regular Expressions
- Introduction to regular expressions in Java
- Overview of basic techniques for handling regular expressions (via the String class) as well as advanced techniques using dedicated classes
- Tokenization, search, and pattern matching for string types
I/O Operations
- Detailed discussion of Java I/O mechanisms, including stream classes, Writer and Reader classes, wrapper classes, and Java stream buffering
- Opening, closing, and writing to files and sockets
Inner Classes: In-Depth Discussion
- Implementation and usage of inner classes and anonymous classes in Java
Threads: Detailed Discussion, Applications, and Challenges
- Discussion of thread abstraction mechanisms in Java, leading to thread synchronization, joining threads in groups, and presenting common thread-related problems such as deadlocks
Java Reflection: Introduction and Applications
- Introduction to the Java reflection mechanism
- Lecture topics include implementing reflection in Java, loading and executing class methods, instantiating classes, and inspecting 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 process
- Typical use cases for serialization, including examples with RMI and 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)