Course code Title Language Price # Unit Startdate Hour Enddate Location Signup
JVN058 Java 8 Fundamentals Dutch €1875.00 5 Day(s) 16-07-2018 09u00 20-07-2018 Kontich Subscribe
JVN058 Java 8 Fundamentals English €1875.00 5 Day(s) on your request on your request Subscribe
JVN058 Java 8 Fundamentals English €1875.00 5 Day(s) 17-09-2018 09u00 21-09-2018 Kontich Subscribe
JVN058 Java 8 Fundamentals on your request on your request Contact Us

Java 8 Fundamentals

Java 8 Fundamentals

Overview

Course code: 
JVN058
Duration: 
5
Time Unit: 
Day(s)
Overview: 

This beginner's course in OO Concepts and Development and Java 8 provides a comprehensive introduction to Java suitable for programmers with previous scripting or programming experience or technical professionals without programming experience that are up to the challenge.

Java is one of the predominant programming languages used today, and its correct usage is a critical part of many systems. The basics of the language are relatively easy, but the challenge lies in learning how to use it well. This is especially true regarding the Object-Oriented nature of Java, which for many developers is a new way of approaching system design and construction.

In addition to teaching you everything you need to become productive in basic Java programming, this course draws on our extensive experience to provide a solid understanding of the core OO and Java concepts and practices needed to create well designed Java programs. It covers all the key OO capabilities and how to use them in Java, including material on creating well designed Java classes, using encapsulation, building more complex functionality with composition, and using inheritance to share functionality and create specialized types.

This course is suitable for environments using Java 8.

This course can be followed by JVN059, Java Advanced, in which more advanced Java concepts, such as using interfaces, working with the Java Collections Framework, Lambda expressions and multithreading are covered.

Topics

Topics: 

Chapter I: Introduction
1.1 The History of Java
1.2 Java as a Programming Language
1.2.1 Types of Programming Languages
1.2.2 Java versus Other Programming Languages
1.2.3 Features of Java as a Programming Language
1.3 Java as a Platform
1.4 Types of Java Applications
1.5 Summary

Chapter 2: Java Development Kit
2.1 Introduction
2.2 JRE and JDK
2.3 Development Environments
2.4 Summary

Chapter 3: My First Java Application
3.1 Introduction
3.2 Creating the Source Code
3.3 Compiling the Source Code
3.4 Running the Bytecode
3.5 The Program Structure
3.5.1 Comments in Java Code
3.5.2 Defining the Package
3.5.3 Defining the Class
3.5.4 The main() Method
3.5.5 The Actual Work
3.6 Summary

Chapter 4: Programming Logic
4.1 Introduction
4.2 Sequences
4.3 Input and Output
4.4 Choices
4.5 Repetitions
4.6 Summary

Chapter 5: The Java Programming Language
5.1 Introduction
5.2 Variables and Literals
5.2.1 Declaring Variables
5.2.2 The Data Type
5.2.3 Literals
5.2.4 The Name
5.2.5 Final Variables or Constants
5.2.6 Type Conversion
5.3 Operators
5.3.1 Arithmetic Operators
5.3.2 Relational Operators
5.3.3 Logical Operators
5.3.4 Shift Operators
5.3.5 Bit Operators
5.3.6 Assignment Operators
5.3.7 Conditional Operators
5.3.8 Other Operators
5.3.9 Priority Rules
5.4 Expressions, Statements, and Code Blocks
5.4.1 Expressions
5.4.2 Statements
5.4.3 Code Block
5.5 Control Flow Statements
5.5.1 Introduction.
5.5.2 The if else Statement
5.5.3 The switch Statement
5.5.4 The while and do while Statements
5.5.5 The for Statement aka the Self-Contained Loop
5.6 Methods
5.7 Summary

Chapter 6: Object-Oriented Programming
6.1 Introduction
6.2 Introduction to Object-Oriented Programming
6.2.1 Objects
6.2.2 Messages
6.2.3 Classes
6.3 Working with Existing Objects
6.3.1 Introduction
6.3.2 Creating Objects
6.3.3 Using Objects
6.3.4 Removing Objects
6.4 Strings
6.4.1 Introduction
6.4.2 The String Class
6.4.3 The StringBuilder Class
6.4.4 Appending Strings Using the + Operato
6.4.5 Formatting Data with the Formatter Class
6.5 Summary

Chapter 7: Arrays
7.1 Introduction
7.2 Creating Arrays
7.3 Using Arrays
7.4 The Enhanced Loop (for-each)
7.5 Array of Objects
7.6 Arrays of Arrays
7.7 Lookup Tables
7.8 Methods with a Variable Number of Parameters
7.9 Summary

Chapter 8: Defining Classes
8.1 Introduction
8.2 Class Declaration
8.3 Class Description (Body)
8.3.1 Properties
8.3.2 Methods
8.3.3 Constructors
8.3.4 Instance Members and Class Members
8.3.5 The Math Class
8.4 Summary

Chapter 9: Associations
9.1 Introduction
9.2 Associations
9.3 Aggregations
9.4 Compositions
9.5 High Cohesion
9.6 Summary

Chapter 10: Inheritance and Class Hierarchy
10.1 Introduction
10.1.1 Subclasses and Superclasses
10.1.2 Inheritance...
10.1.3 Class Hierarchy
10.1.4 Abstract Classes
10.2 Defining Subclasses in Java
10.3 Properties of Subclasses
10.3.1 Inheritance of Properties
10.3.2 Adding Properties
10.3.3 Overriding (Hiding) Properties
10.4 Methods of Subclasses
10.4.1 Inheritance of Methods
10.4.2 Adding Methods
10.4.3 Overriding Methods
10.4.4 Polymorphism
10.5 Constructors of Subclasses
10.6 Class Properties and Class Methods
10.7 Final Classes and Methods
10.8 Abstract Classes
10.9 The Superclass Object
10.9.1 Class Hierarchy
10.9.2 The instanceof Operator
10.9.3 Methods of the Object Class
10.10 Polymorphism (continued)
10.11 Reusing Code: Inheritance versus Association
10.12 Summary

Chapter 11: Enumeration
11.1 Introduction
11.2 Properties, Methods, and Constructors
11.3 Summary

Chapter 12: Simple Classes
12.1 Introduction
12.2 Wrappers for Primitive Data Types
12.2.1 Wrapper Classes
12.2.2 Autoboxing
12.2.3 Static Members
12.3 Dates and Times
12.3.1 Introduction
12.3.2 Computer Times: the Instant Class
12.3.3 Human Dates and Times
12.3.4 Duration
12.3.5 Formatting Dates and Times
12.3.6 Conversion from and to Date and Calendar
12.4 Summary

Chapter 13: Interfaces
13.1 Introduction
13.2 Defining an Interface
13.2.1 Interface Declaration
13.2.2 Interface Description
13.3 Implementing an Interface in a Class
13.4 Default Methods
13.5 Static Methods
13.6 The Interface as a Data Type
13.7 Summary

Chapter 14: Nested and Anonymous Classes
14.1 Introduction
14.2 Inner Classes
14.3 Local Inner Classes
14.4 Anonymous Inner Classes
14.5 Static Nested Classes
14.6 Summary

Chapter 15: Exception Handling
15.1 Introduction
15.2 Dealing with Exceptions
15.2.1 Causing an Exception
15.2.2 Catching an Exception
15.2.3 Catching Multiple Exceptions
15.2.4 Common Exception Handlers
15.2.5 The finally Block
15.3 Generating Exceptions
15.3.1 The throw Statement
15.3.2 Exceptions of Overridden Methods
15.4 Types of Exceptions
15.4.1 Exceptions versus Errors
15.4.2 Checked Exceptions versus Runtime Exceptions
15.5 Creating Your Own Exception Class
15.6 Catching, Wrapping, and Rethrowing Exceptions
15.7 Summary

Chapter 16: Javadoc
16.1 Introduction
16.2 Javadoc Tags
16.2.1 Documentation of Classes and Interfaces
16.2.2 Documentation of Properties
16.2.3 Documentation of Methods and Constructors
16.2.4 Documentation of Packages
16.2.5 Overview Documentation
16.3 JAVADOC Tool
16.4 Summary

Chapter 17: Generics
17.1 Introduction
17.2 Generic Classes
17.2.1 Defining Generics
17.2.2 Restricting the Type Used
17.2.3 Unknown Type
17.2.4 Subclasses of Generic Classes
17.3 Generic Interfaces
17.4 Generic Methods
17.4.1 Formal Generic Parameters
17.4.2 Formal Generic Parameters with Wildcards
17.4.3 Formal Generic Parameters with Bounded Wildcards
17.4.4 Type Parameters
17.5 Behind the Screens of Generics
17.6 Arrays and Generics
17.7 Cooperation Between Old and New Code
17.8 Summary

Chapter 18: Lambda Expressions
18.1 Introduction
18.2 Functional Interfaces
18.3 Definition of Lambda Expressions
18.4 Method References
18.4.1 Static Methods of a Class or Interface
18.4.2 Methods of a Bound Object
18.4.3 Methods of an Unbound Object
18.4.4 Constructor References
18.5 Default Functional Interfaces
18.5.1 Predicate
18.5.2 Function
18.5.3 Consumer

Chapter 19: Streaming API
19.1 Introduction: Internal versus External Iterations
19.2 Stream Sources
19.3 Operations
19.3.1 Terminal Operations
19.3.2 Intermediate Operations
19.4 Summary

Chapter 20: Collections
20.1 The Collections Framework
20.2 The Collection Interface and Implementations
20.2.1 List
20.2.2 Set
20.2.3 SortedSet & NavigableSet
20.2.4 Queue
20.2.5 Deque
20.2.6 Comparing Between the Implementations
20.2.7 Sorting Collections
20.2.8 Collections and Streams
20.3 The Map Interface and Implementations
20.3.1 Map
20.3.2 SortedMap & NavigableMap
20.3.3 Comparison Between the Implementations

Prerequisites

Prerequisites: 

No prior experience is required, but preferably students have experience with another third-generation (high-level) language. This course is ideal for developers, moving to object-oriented programming using Java.

Audience

Audience: 

Application developers
Webdevelopers
Technical professionals