Discover our 2026 training catalogue
Log in
Or create your account
You have just added to your selection
Your cart is empty, See our trainings

Description

This training has a dual objective. On the one hand, delve deeper into certain advanced aspects of the language (generic types, annotations, reflective programming, class loading). On the other hand, present a synthetic overview of the main libraries concerning the following themes: Thread management, communications via the network, administration and supervision of applications. This course also emphasizes associated architectural techniques.

Who is this training for ?

For whom ?

Developers, engineers, project managers close to development.

Prerequisites

Good knowledge of the Java language. Experience required in Java programming.

Training objectives

  • Master the advanced aspects of the Java language
  • Implement concurrent programming based on Threads
  • Implement different communication techniques (Socket, RMI, JMS)
  • Understand the security model and loading of Java classes
  • Administer a Java application via JMX, monitor the JVM
  • Implement reflective programming

Training program

    • The Inner Classes.
    • Anonymous classes.
    • The covariant redefinition of methods (jdk1.
    • 5).
    • The new for loops (jdk1.
    • 5).
    • The Import Static (jdk1.
    • 5).
    • Auto-boxing, auto-unboxing (jdk1.
    • 5).
    • The varargs (jdk1.
    • 5).
    • Enumerated types (jdk1.
    • 5).
    • Usage and definition.
    • Generic types (jdk1.
    • 5) .
    • The use and definition of simple generic types.
    • Genericity and the subtyping relationship.
    • Generic types at runtime , generic types and instantiation, generic types and arrays.
    • Generic methods.
    • The simultaneous use of generic and non-generic types.
    • Annotations (jdk1.
    • 5 and jdk1.
    • 6).
    • Principles.
    • Predefined annotations (
    • override,
    • deprecated,
    • generated.
    • ).
    • The definition of new annotations.
    • Meta-annotations (
    • Retention,
    • Target,
    • Documented,
    • Inherited).
    • Reflexive use of annotations.
    • .
    • Wildcard support in the classpath (jdk1.
    • 6).
    • New features on collections (jdk1.
    • 5 and jdk1.
    • 6): Queues, ConcurrentMap.
    • Practical work Using types generics and annotations.
    • Definitions relating to concurrent programming: Threads.
    • The creation/destruction of Threads.
    • Scheduling of Threads.
    • The synchronization of Threads.
    • The locking of methods and instructions (synchronized).
    • Monitors.
    • Methodological principles for the design of multithreaded applications.
    • The problems posed by multithreaded programming.
    • The deadlock problem (characterization, avoidance, prevention, detection).
    • The starvation problem.
    • The JDK1 competing library.
    • 5.
    • The new collections.
    • The new synchronization tools: shared locks /exclusives, semaphores, cyclic barriers.
    • Practical work rnConstruction of a concurrent application with synchronization and deadlock resolution.
    • Reminders of the main network concepts.
    • Programming in non-connected mode (by datagram).
    • The Peer to Peer model.
    • Communication in connected mode (by stream).
    • The client/server model.
    • Sequential server vs concurrent server.
    • Use of serialization.
    • The nio library.
    • Buffers, channels.
    • Selectors and their use.
    • Practical work Programming of the case study in client-server mode (sequential and concurrent).
    • The general principles.
    • The base classes.
    • The naming service.
    • The client and server development process .
    • Security and class loading constraints.
    • Practical work Programming the case study using RMI.
    • The general principles of communication by messages.
    • The concepts of JMS, the interfaces and the corresponding classes.
    • The different forms of messages.
    • Communication in point-to-point mode.
    • Communication in publish/subscribe mode.
    • Practical work Programming from the case study to the JMS help.
    • The advanced and lesser-known aspects of the JVM.
    • The mechanisms related to the JVM to ensure security.
    • The security model of Jdk1.
    • 2: permissions, policies, security domains.
    • The security manager and the access controller.
    • The class loading mechanisms.
    • The development of specific class loaders.
    • The distinction between the application to be administered and the administration application.
    • The concepts of JMX: MBean, MBeanServer, Agent, Connector.
    • The JMX API.
    • The implementation of the different categories of Mbeans (standard, dynamic, model).
    • The use of adapters and connectors.
    • Administration consoles.
    • Practical work Setting up an administration-supervision layer for the case study.
    • Objectives and principles.
    • Class loading.
    • The Class object.
    • Dynamic discovery of information (properties and methods) relating to a class or an object.
    • Dynamic instantiation.
    • Invoke a method.
    • The reflexivity of annotations in Java 5.
  • 1704
  • 35 h

Submit your review

Translated By Google Translate