Java Programming for Developers
Contact us for Onsite Price
Layout
This training course combines lectures with practical exercises that help the delegates to put what they have learned on the training course into practice. The exercises specifically build on what has been recently taught and are built up as the training course progresses.
Training Course Objectives
- Understand the Java runtime environment and the role of the virtual machine
- Identify and use the Java primitive datatypes
- Use the Java flow control constructs
- Understand the difference between classes and objects
- Implement instance data, methods, constructors, and method overloading
- Understand and implement the concept of inheritance
- Define the role of an interface, and be able to create and use one
- Understand the concept of static data and methods
- Understand the concept of polymorphism and be able to take advantage of it using Java
- Be able to implement the Java Collections API using Generics
- Build error handling blocks into applications
- Understand the need for Enums and be able to create an Enum using Java
- Working with Lambda Expressions
Who it is for
This training course is for developers who need to be able to develop applications using the Java programming language.
Training Course Prerequisites
- The training course assumes that delegates are already programmers. They will already understand the need for flow control, variables, operators and functions, and indeed have used them in other language contexts.
- It assumes no knowledge of the object-oriented paradigm as object oriented theory is also covered in the content of the training course.
Chapters
Chapter 1 Introduction to Java
- What is Java?
- The Java Virtual Machine
- The Java Runtime
Chapter 2 Java - the basics
- Variable types in Java
- Java syntax
- Java operators
Chapter 3 Looping and Branching
- if / else constructs
- switch case blocks
- while and for loops
- The 'for each' loop
Chapter 4 Introduction to Object Orientation
- Classes and objects
- Definition of Encapsulation
- Definition of Inheritance
- Definition of Polymorphism
Chapter 5 Introduction to Objects in Java
- Defining variables and methods in classes
- Object references
- The null reference
- Garbage collection
Chapter 6 Working with Arrays
- Creating arrays
- Initialising arrays
- Array initialisers
- Variable argument lists
Chapter 7 More on Java classes
- Constructors
- Static variables and methods
- Method overloading
- Static imports
Chapter 8 Working with Strings
- The String class
- The String methods
- The StringBuilder class
- Formatting text
- The printf Methods
Chapter 9 Packaging Java Classes
- Using import
- Defining packages
- Using the classpath
- Compiler flags
- IDE package support
Chapter 10 Inheritance and Abstraction in Java
- Inheritance in Java
- Abstract classes and methods
- Method overriding
- Using @Override
- Polymorphism and inheritance
Chapter 11 Interfaces
- The theory of interfaces
- Defining and using interfaces
- Polymorphism with interfaces
- Default methods in Java 8
Chapter 12 The Collections API and Generics
- Working with Lists
- Working with Sets
- Working with Maps
- Working with Generic collections
- Working with Iterators
- The Comparator and Comparable interfaces
Chapter 13 Enums
- Life without Enums
- Defining a basic Enum
- Adding properties, methods and private constructors
Chapter 14 Inner Classes
- The four types of inner classes
- Creating inner classes
- Using inner classes
Chapter 15 Lambda Expressions
- The purpose of Lambda Expressions
- Lambda expressions as Comparators
- Lambda expressions as Runnables
- Lambda expressions with looping constructs
Chapter 16 Error Handling in Java
- Exception handling in Java
- The Error and Exception classes
- Defining custom exception classes
- Introduction to Java logging APIs
Chapter 17 Multithreading in Java
- What is multithreading
- How to create additional threads in Java
- Synchronization with multithreading