Realdolmen Education

Details

Java 8 Programming Essentials

This course is currently not scheduled on the open calendar, but can be organized on request.

Request Course

Duration

5 day(s)

Audience

Developers starting with Java.

Prerequisites

Some experience with at least one programming language. Some understanding of object orientation principles.

Objectives

This course will help developers learn the syntax of the Java language and the steps required to create simple Java programs.

Methods

Classroom training with hands-on exercises.

Description

Java is one of the most popular programming languages and is used extensively in many enterprises. Its popularity has also increased when it became the global standard for developing and delivering mobile applications. Its maturity, robust performance, portability and extensive tool support make it a solid choice for developing many types of software applications. The new Java SE 8 is probably the most exciting release of Java yet!

This course is meant to introduce you into the Java programming language and technology, and will help you understand how to create, compile and execute Java programs. During the course, you will learn how to use the Java programming language syntax to create several applications. This includes the use of decisions, loops and methods to influence program flow. You will learn how to implement object orientation concepts in Java programs, how to use arrays and collections and how to implements simple error handling. At the end of the course you will have built a solid foundation from which you can start to explore more advanced Java features and frameworks. This training is based on Java SE 8.

During the many exercises, you will gain hands on experience with the basic Java concepts, so you can immediately start applying the knowledge you acquired.

Contents

  • Introduction
    • Goal
    • Agenda
  • Development Basics
    • Developing Java Applications
    • Java Development Kits
    • Java Program Structure
    • Command-Line Tools
    • Classpath
  • The Java Platform
    • The Java Platform
    • Common Java SE API Libraries
  • Fundamental Types
    • Fundamental Types
    • Primitive Types
    • Literals for Primitive Types
    • Floating-Point Entities
    • Operations Involving Special Entities
    • Numeric Promotion of Primitive Types
    • Wrapper Classes
    • Autoboxing and Unboxing
    • Autoboxing
    • Unboxing
  • Lexical Elements
    • Lexical Elements
    • Unicode and ASCII
    • ASCII Characters
    • Comments
    • Javadoc Comments
    • Keywords
    • Identifiers
    • Separators
    • Operators
    • Literals
    • Escape Sequences
  • Statements and Blocks
    • Statements
    • Reserved Java Words
    • Expression Statements
    • Empty Statement
    • Blocks
    • Conditional Statements
    • Iteration Statements
    • Transfer of Control
    • Synchronized Statement
    • Assert Statement
    • Exception Handling Statements
  • Naming Conventions
    • Naming Conventions
    • Class Names
    • Interface Names
    • Method Names
    • Instance and Static Variable Names
    • Parameter and Local Variable Names
    • Generic Type Parameter Names
    • Constant Names
    • Enumeration Names
    • Package Names
    • Annotation Names
    • Acronyms
  • Object-Oriented Programming
    • Basic Elements
    • Classes and Objects
    • Inheritance
    • Encapsulation
    • Class Syntax
    • Creating an Object
    • Data Members and Methods
    • Example class
    • Accessing members
    • Overloading
    • Overriding
    • Constructors
    • Superclasses and Subclasses
    • Super
    • This
    • Variable-Length Argument Lists
    • Printf
    • Abstract Classes
    • Abstract Methods
    • Static Members
    • Static Methods
    • Static Constants
    • Static Initializers
    • Interfaces
    • Enumerations
    • Annotations
    • Developer-Defined Annotations
    • Meta-Annotations
    • Using Annotations
    • Functional Interfaces
  • Reference Types
    • Reference Types
    • Comparing Reference Types to Primitive Types
    • Default Values
    • Arrays
    • Multidimensional Arrays
    • Conversion of Reference Types
    • Widening Conversions
    • Narrowing Conversions
    • Converting Between Primitives and Reference Types
    • Passing Reference Types into Methods
    • Comparing Reference Types
    • Comparing Strings
    • Comparing Enumerations
    • Copying Reference Types
    • Memory Allocation and Garbage Collection of Reference Types
  • Memory Management
    • Automatic Memory Management
    • Garbage Collectors
    • Memory Management Tools
    • Command-Line Options
    • Resizing the JVM Heap
    • Metaspace
    • Interfacing with the GC
  • Java Modifiers
    • Modifiers
    • Modifier Applicability
    • Access Modifiers
    • Other Modifiers
  • Exception Handling
    • Exception Handling
    • Exception Hierarchy
    • Checked/Unchecked Exceptions and Errors
    • Common Checked Exceptions
    • Common Unchecked Exceptions
    • Common Errors
    • Exception Handling Keywords
    • The try-catch Statement
    • The try-finally statement
    • The try-catch-finally Statement
    • The try-with-resources Statement
    • The multi-catch Clause
    • The Exception Handling Process
    • Defining Your Own Exception Class
    • Printing Information About Exceptions
  • Generics Framework
    • Generics
    • Generic Classes and Interfaces
    • Constructors with Generics
    • Substitution Principle
    • Wildcards and Bounds
    • Get and Put Principle
    • Generic Specialization
    • Generic Methods
  • Java Collections Framework
    • Java Collections Framework
    • The Collection Interface
    • Implementations
    • Collection Framework Methods
    • Collections and Streams
    • Collections Class Algorithms
    • Algorithm Efficiencies
    • Comparator Functional Interface
  • Date and Time API
    • Date and Time API
    • Legacy Interoperability
    • Regional Calendars
    • ISO Calendar
    • Machine Interface
    • Durations and Periods
    • JDBC and XSD Mapping
    • Formatting
  • Lambda Expressions
    • Lambda Expressions
    • Lambda Expression Basics
    • Lambda Expression Syntax
    • Lambda Expression vs Anonymous Inner Classes
    • Method and Constructor References
    • General Purpose Functional Interfaces
    • Special Purpose Functional Interfaces
  • Beehive - A Gentle Introduction to the Concepts of Object Orientation
    • Beehive
    • Sorts of Bees
    • Capabilities of Bees
    • Properties of Bees
    • Examples of Bees
    • Classes versus Objects
    • Inheritance
    • Substitution
    • Polymorphism
    • Abstract classes
    • Interfaces
    • Java Syntax