Training Course
Java Programming 2
Private Training
Flexible dates, location and content. All prices exclude VAT.
Course Duration
5 DaysJava Programming 2 Course Overview
The Java Programming 2 course is closely aligned with the Oracle Java SE 8 Programmer II exam.This course focuses on the core language features and Application Programming Interfaces (APIs) you will use to design effective object-oriented and functional programming applications with the Java Standard Edition 8 Platform.
This course will teach you how to design and develop robust Java code that is easy to test and maintain and can be integrated into multiple applications.
The most important new topics introduced in Java SE 8 are covered, such as Functional Programming and Stream API, that allow you to use the most up to date techniques in your code.
Exercises and examples are used throughout the course to give practical hands-on experience with the techniques covered.
Java Programming 2 Course Prerequisites
-
- Delegates attending this course should have experience programming with an object-oriented language, ideally Java. This knowledge can be obtained by attendance on the pre-requisite Java Programming 1 course.
Java Programming 2 Course Objectives
-
- This course aims to provide the delegate with the knowledge to be able to produce robust, scalable, and testable Java code that may be integrated into enterprise applications and that go beyond the core elements of the language exploiting design patterns, functional programming, collections, date and time, input/output, concurrency, and JDBC. The course further aims to prepare the delegate to sit the Oracle Java SE 8 Programmer II exam.
Course Certification
The Java Programming 2 course helps delegates prepare for the following exam:Oracle Certified Professional (OCP) Java SE8 Programmer II exam (1Z0-809)
Attending this course will help delegates gain many of the skills and product knowledge requirements as outlined in the exam objectives. Studying this course and its associated reference materials can form part of the preparation to achieve certification. Experience, practice, self-study and aptitude are also key requirements for exam success.
Before taking any exam, ensure you have the recommended experience. The Oracle website lists all exam requirements and these are updated regularly.
Exams are not included as part of the course.
Target Audience for this Course
-
- The Java Programming 2 course is aimed at staff and consultants working as part of a Java development team to develop high-quality robust software. Roles include Programmers, Designers, Architects, Testers and anyone who needs a good understanding of the use of the Java language and infrastructure.
Skills Gained from this Training
-
- Implementing code using inheritance and polymorphism
- Using design patterns to ensure robust design of classes
- Overriding key methods of the Object class to provide interoperability with collections and other APIs
- Understanding and using Generics within existing classes and create new Generic classes
- Creating and using collections including sets, maps and queues
- Selecting and incorporating standard functional interfaces in code
- Using Stream API to generate, filter, process and reduce stream data
- Writing Lambda expressions for use within code including with functional interfaces
- Declaring try-with-resources blocks and using AutoCloseable classes
- Working with Java SE8 Date/Time API classes
- Reading and writing data from/to the Console
- Managing files and directories
- Writing concurrent code and using Concurrent API
- Using parallel streams
- Building database applications with JDBC
Included with this course
-
- Comprehensive course materials and exercises
Java Programming 2 Course Content
-
DAY 1
Course Introduction
Administration and Course Materials
Course Structure and Agenda
Delegate and Trainer Introductions
Session 1: JAVA CLASS DESIGN
Review of Core Java Class Design Principles
The instanceof operator
Virtual Method Invocation
@Override Annotation
Overriding equals, hashCode and toString
Enums
Nested Classes
Session 2: JAVA DESIGN PATTERNS
Designing Interfaces
Functional Programming
Implementing Polymorphism
Java Design Principles
Singleton Pattern
Immutable Objects
Builder Pattern
Factory Pattern -
DAY 2
Session 3: GENERICS AND COLLECTIONS
Review of Array and ArrayList and Diamond Operator
Generic Classes, Interfaces and Methods
Lists, Sets, Maps and Queues
Comparable and Comparator
Searching and Sorting
Method References
Conditional Removal of Elements
Java Map APIs
Session 4: FUNCTIONAL PROGRAMMING AND STREAM API
Using Variables in Lambdas
Built-In Functional Interfaces
Optional Objects
Creating Stream Sources
Terminal and Intermediate Operations
Constructing a Pipeline
Primitive Streams -
DAY 3
Session 4 (Continued): FUNCTIONAL PROGRAMMING AND STREAM API
Functional Interfaces for Primitives
Linking Streams to Underlying Data
Chaining Optionals
Collecting Results
Session 5: DATES, STRINGS AND LOCALIZATION
Date and Time API Classes
Creating Dates and Times
Manipulating Dates and Times
Periods
Durations
Daylight Saving Time
String Class Functionality
Internationalization and Localization
Locales
Resource Bundles
Formatting Numbers
Formatting Dates and Times
Session 6: EXCEPTIONS AND ASSERTIONS
Exceptions Terminology
Categories of Exceptions
Try Statement
Throw Statement
Throws Statement
Custom Exceptions
Multi-Catch Blocks
Try-With-Resources
AutoCloseable
Suppressed Exceptions
Rethrowing Exceptions
The assert Statement
Enabling Assertions -
DAY 4
Session 7: CONCURRENCY
Thread Types and Concurrency
Runnable Interface
Creating Threads
Polling with Sleep
Using ExecutorService
Thread Pools
Synchronizing Data Access
Atomic Classes
Synchronized Blocks and Methods
Concurrent Collections
Memory Consistency Errors
Parallel Streams
Processing Parallel Reductions
CyclicBarrier Class
Fork/Join Framework
Threading Problems and Race Conditions
Session 8: IO
Conceptualizing the File System
File Class
IO Streams
FileInputStream and FileOutputStream -
DAY 5
Session 8 (Continued): IO
FileReader and FileWriter
ObjectInputStream and ObjectOutputStream
Serializing and Deserializing Objects
PrintStream and PrintWriter
Console
Session 9: NIO.2
Path Class
Interacting with Paths and Files
File Attributes
File Attribute View Classes
Directory Walking
Legacy File vs. NIO.2 Methods
Session 10: JDBC
Relational Databases and SQL
JDBC Interfaces
Connecting to a Database
Statements, ResultSet Types and Concurrency Modes
Executing Statements
Getting Data from a ResultSet
Closing Database Resources
Dealing with Exceptions
Private Training
Flexible dates, location and content. All prices exclude VAT.
-
Java Programming 2 Course Options
Please contact us to discuss options for this coursePublic ScheduledPublic ScheduledFixed course content, fixed date, fixed location, fixed length, multiple organisations - All you need to do is choose which course you would like to attend and contact us to book!PrivatePrivateFlexible course content, flexible training date(s), flexible location(s), variable course length, private to your organisation - Courses can be held at one of our training venues or at another location convenient to you. Training can be set over a number of days or weeks to allow for practice time between training sessions.BespokeBespokeBespoke private training can be based on an existing course or a number of lessons taken from several courses, we can also write bespoke courses for you based on your in-house systems or development program.VirtualVirtualThese courses can be attended from anywhere.
- Virtual Training
Very helpful
S.W. Community Foundation, Word intermediate
Following this training what are you going to do differently
Set up and use a site for our team
E.B. URC, SharePoint Overview
Very informative, good input and time allowed
S. , Excel Level 3
Following this training what are you going to do differently
Use Teams effectively
D.T. Watmos, Outlook Overview and MS Teams for Hosts
I thought the course was really helpful and I would fully recommend.
E.F. Egger, Excel Level 2
Very useful and well tailored to our requirements
A.S. Indigo Software Ltd, OneNote Essentials
Following this training what are you going to do differently
Will be leading the effort to replace a large number of reports currently done in Excel with Power BI variants to better present the data, and make reproduction far faster.
T.W. Network Rail, Microsoft Power BI Desktop
Which part of the course did you find particularly valuable
The overview of crystal and the functionality of formulas
G.P. NHS Fleet Solutions, Crystal Reports Level 1
Private Training
Flexible dates, location and content. All prices exclude VAT.
Please contact us to discuss your Java Programming 2 course, we have many solutions available to ensure you receive the best training possible.
Your Java course can be delivered online or in-person. You can choose your learning path and delivery style. Learn in-person or online with our virtual classrooms. Your course can be delivered online, at your office or at one of our training venues, it's your choice. Small course sizes. Course materials included. Flexible Java Programming 2 course content. Expert trainers and tried & tested training methods. Many course materials available online using your personal training account.
You can master Java, please contact us to book a place or request a quote for your Java Programming 2 course.
IT Training Solutions Ltd
Oakville, 14 Durham Road West, Bowburn, Durham, DH6 5AU
0191 377 8377
ittrainingsolutions.co.uk
Printed:9/11/2024 12:19:57 AM
Oakville, 14 Durham Road West, Bowburn, Durham, DH6 5AU
0191 377 8377
ittrainingsolutions.co.uk
Printed:9/11/2024 12:19:57 AM