Get in Touch

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

Number of participants


Price per participant

Testimonials (3)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories