Course Code: javaintadv
Duration: 21 hours
Prerequisites:
  • Knowledge about Java langauge and OOP. Participatns needs to know packages, control flows and loops, basic concrete classes and basic interfaces.

Overview:

Participants who are already Java programmers who want to extend their horizon and used more Java language concepts.

Course Outline:

Review

  • Inheritance and Intefances
  • Object References vs Inheritence
  • Polymorphism
  • Interface Static and Default Methods
  • Collections and Generics
  • Generics (Inheritance, Wildcards)
  • Writing Generic Types

Design Patterns

  • Object Creation
  • Static methods and fields
  • new Operator
  • Creation Patterns
  • Inheritance vs Composition / Pros and Cons
  • Composite Pattern
  • Inner Classes

Reflection

  • The class called Class
  • Finding Fields, Methods, and Constructors
  • Accessing Fields, Invoking Methods
  • Examining Arrays

Annotations

  • Annotations in the Java API (@Override, @Deprecated)
  • Defining Annotations

Functional Programming

  • Lambda Expression Overview
  • Lambda Expressions and Functional Interfaces
  • Using Lambda Expressions
  • Working with Method References

The Stream API

  • Streams and Collections
  • Filtering Collections
  • Chaining and Pipelining

Date/Time API

  • Legecy APIs
  • The Date/Time API (JSR 310)
  • Date-Based and Time-Based Events
  • Timestamps, Periods, and Durations
  • Performing Calculations
  • Formatting
  • Localization / Time Zones

JUnit Basics

  • JUnit Overview, Test Driven Development
  • Tests and Assertions
  • Working With Exceptions
  • Organizing Tests with JUnit
  • Writing Fixtures - @Before, @After
  • Test Suites, and Other Capabilities
  • Mock Objects Overview

Build Tools

  • Ant Overview
  • Maven Overview

Abstract Class

  • Declaration principles and implementation of abstract classes
  • Typical problems encountered when working with abstract classes

The Role of Classes, Abstract Classes and Interfaces in the Application Model

  • Grades Java object-oriented abstraction
  • The complete object model in Java
  • Program model oriented  for interfaces, abstract classes and interfaces for application more flexibility and independence of each of its sub-systems from each other in their implementation
  • Applications of abstract classes in order to extract common functionality extended by the implementation of the flexibility that they offer interfaces

The Role of Dynamic and Static Objects in the Application Model

  • Static Java classes and dynamic properties of these classes
  • Making a distinction in the functionality of both types of entities within Java and typical uses, and their example of good practice in the design of solutions based on static and dynamic beings Java
  • Introduction to the design patterns
  • Introduction to the factory design pattern

Operations with Simple Types and Wrapper Classes

  • Very important facts and techniques to extend the use of simple types in the Java object model.
  • Discussion of the role of wrapper classes simple types and typical applications of this type in the application

Special Objects Java, the Class String, StringBuilder and StringBuffer

  • Reminder basic properties of the String class and discuss the treatment of String objects by the virtual machine
  • The use of buffer classes and operate on chains

Formatting and Parsing, Regular Expressions

  • Introduction to regular expressions in Java
  • Discussion of both basic techniques for handling regular expressions (String class) as well as advanced techniques based on dedicated classes for this type of construction
  • Tokenization, search and pattern matching for string types
Sites Published:

United Arab Emirates - Java Intermediate and Advanced

Qatar - Java Intermediate and Advanced

Egypt - Java Intermediate and Advanced

Saudi Arabia - Java Intermediate and Advanced

South Africa - Java Intermediate and Advanced

Brasil - Java Intermediate and Advanced

Canada - Java Intermediate and Advanced

中国 - Java Intermediate and Advanced

香港 - Java Intermediate and Advanced

澳門 - Java Intermediate and Advanced

台灣 - Java Intermediate and Advanced

USA - Java Intermediate and Advanced

Österreich - Java Intermediate and Advanced

Schweiz - Java Intermediate and Advanced

Deutschland - Java Intermediate and Advanced

Czech Republic - Java Intermediate and Advanced

Denmark - Java Intermediate and Advanced

Estonia - Java Intermediate and Advanced

Finland - Java Intermediate and Advanced

Greece - Java Intermediate and Advanced

Magyarország - Java Intermediate and Advanced

Ireland - Java Intermediate and Advanced

Luxembourg - Java Intermediate and Advanced

Latvia - Java Intermediate and Advanced

España - Java Intermediate and Advanced

Italia - Java Intermediate and Advanced

Lithuania - Java Intermediate and Advanced

Nederland - Java Intermediate and Advanced

Norway - Java Intermediate and Advanced

Portugal - Java Intermediate and Advanced

România - Java Intermediate and Advanced

Sverige - Java Intermediate and Advanced

Türkiye - Java Intermediate and Advanced

Malta - Java Intermediate and Advanced

Belgique - Java Intermediate and Advanced

France - Java Intermediate and Advanced

日本 - Java Intermediate and Advanced

Australia - Java Intermediate and Advanced

Malaysia - Java Intermediate and Advanced

New Zealand - Java Intermediate and Advanced

Philippines - Java Intermediate and Advanced

Singapore - Java Intermediate and Advanced

Thailand - Java Intermediate and Advanced

Vietnam - Java Intermediate and Advanced

India - Java Intermediate and Advanced

Argentina - Java Intermediate and Advanced

Chile - Java Intermediate and Advanced

Costa Rica - Java Intermediate and Advanced

Ecuador - Java Intermediate and Advanced

Guatemala - Java Intermediate and Advanced

Colombia - Java Intermediate and Advanced

México - Java Intermediate and Advanced

Panama - Java Intermediate and Advanced

Peru - Java Intermediate and Advanced

Uruguay - Java Intermediate and Advanced

Venezuela - Java Intermediate and Advanced

Polska - Java Intermediate and Advanced

United Kingdom - Java Intermediate and Advanced

South Korea - Java Intermediate and Advanced

Pakistan - Java Intermediate and Advanced

Sri Lanka - Java Intermediate and Advanced

Bulgaria - Java Intermediate and Advanced

Bolivia - Java Intermediate and Advanced

Indonesia - Java Intermediate and Advanced

Kazakhstan - Java Intermediate and Advanced

Moldova - Java Intermediate and Advanced

Morocco - Java Intermediate and Advanced

Tunisia - Java Intermediate and Advanced

Kuwait - Java Intermediate and Advanced

Oman - Java Intermediate and Advanced

Slovakia - Java Intermediate and Advanced

Kenya - Java Intermediate and Advanced

Nigeria - Java Intermediate and Advanced

Botswana - Java Intermediate and Advanced

Slovenia - Java Intermediate and Advanced

Croatia - Java Intermediate and Advanced

Serbia - Java Intermediate and Advanced

Bhutan - Java Intermediate and Advanced

Nepal - Java Intermediate and Advanced

Uzbekistan - Java Intermediate and Advanced