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
- Declaration principles and implementation of 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
- Application models oriented around interfaces and abstract classes to enhance flexibility and ensure independence between subsystems in their implementation
- Use of abstract classes to extract shared functionality, complemented by the flexibility offered through interfaces
The role of dynamic and static objects in the application model
- Static Java classes and their dynamic properties
- Distinguishing the functionality of both entity types within Java, 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
- Discussion of the role of wrapper classes for primitive types and their typical applications in software development
Special Java objects: the String, StringBuilder, and StringBuffer classes
A review of the fundamental properties of the String class and how the Java virtual machine handles String objects
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 based on dedicated classes for such constructs
- Tokenisation, searching, and pattern matching for string types
I/O operations
- A detailed exploration of Java I/O mechanisms, including stream classes, Writer and Reader classes, wrapper classes, and buffered streams in Java
- Opening, closing, and writing to files and sockets
Inner classes – detailed discussion
- Implementation and usage of inner classes and so-called anonymous classes in Java
Threads – detailed discussion, applications, and challenges
- Discussion of thread-related topics, ranging from the abstraction mechanism for threads in Java to thread synchronisation, thread grouping, thread pools, and common issues such as deadlocks
Java Reflection – introduction and application
- Introduction to the Java reflection mechanism
- Coverage includes the implementation of 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 serialise objects, handling interdependent objects, and avoiding common pitfalls associated with these issues
- Typical use cases, including examples involving serialization with RMI and CORBA
Requirements
Participants should have a solid understanding 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)