Get in Touch

Course Outline

Abstract Classes

  • Principles and implementation of abstract classes
  • Common challenges encountered when working with abstract classes

The Role of Classes, Abstract Classes, and Interfaces in Application Models

  • Levels of object-oriented abstraction in Java
  • The comprehensive Java object model
  • Program models that leverage interfaces and abstract classes to enhance application flexibility and ensure independence between sub-systems
  • Utilising abstract classes to extract common functionality, combined with the flexibility offered by interfaces for implementation

The Role of Dynamic and Static Objects in Application Models

  • Static Java classes and their dynamic properties
  • Distinguishing the functionality of static and dynamic entities, typical use cases, and best practices for designing solutions based on them
  • Introduction to design patterns
  • Introduction to the Factory design pattern

Operations with Simple Types and Wrapper Classes

  • Key techniques for extending the use of simple types within the Java object model
  • The role of wrapper classes for primitive types and their typical applications

Special Java Objects: String, StringBuilder, and StringBuffer

A review of the basic properties of the String class and how the virtual machine handles String objects

The use of buffer classes for manipulating character sequences

Formatting, Parsing, and Regular Expressions

  • Introduction to regular expressions in Java
  • Basic techniques for handling regular expressions (using the String class) and advanced techniques using dedicated classes
  • Tokenization, search, and pattern matching for string types

I/O Operations

  • A detailed examination of Java I/O mechanisms, including streams, Writer and Reader classes, wrapper classes, and buffering streams
  • Opening, closing, and writing to files and sockets

Inner Classes: A Detailed Discussion

  • Implementation and usage of inner classes and anonymous classes in Java

Threads: Detailed Discussion, Applications, and Challenges

  • A comprehensive look at thread topics, from abstraction mechanisms to synchronisation and thread groups, including a discussion on common issues such as deadlocks

Java Reflection: Introduction and Application

  • An introduction to the Java reflection mechanism
  • Implementing reflection in Java, including loading and running class methods, instantiating classes, and inspecting class structures

Java Serialization

  • An introduction to Java object serialisation
  • Understanding serialization, serializing objects, handling interdependent objects, and avoiding common pitfalls
  • 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 (1)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories