Description
This program allows participants to prepare for a course to develop their Java language skills and prepare for the Oracle Certified Professional, Java SE 8 Programmer Exam.
Addressed to
- Candidates who are interested in continuing their knowledge of Java SE8 and who are seeking the Java SE 8 Programmer certification
Duration
40 hours
Modalities
- Face-to-face
- Virtual live through digital platforms
- on site
Related Courses
- Java SE 8 Fundamentals
It includes
- 40 hours of training
- Trained instructors
- Participant manual in digital format
- Proof of participation

Temary
Lesson 1: Java Platform Overview
- Define how the Java language achieves platform independence.
- Differentiate between the Java ME, Java SE, and Java EE platforms
- Evaluating Options for Java Databases, Middleware, and Libraries
- Define how the Java language continues to evolve.
Lesson 2: Java Class and Syntax Review
- Create simple Java classes
- Creating primitive variables
- Using operators
- Create and manipulate strings
- Using if-else and switch statements
- Iterating with loops: while, do-while, for, enhanced for
- Creating arrays
- Using Java fields, constructors, and methods
Lesson 3: Encapsulation and Subclassification
- Using Encapsulation in Java Class Design
- Modeling business problems using Java classes
- Make classes immutable
- Creating and using Java subclasses.
- Overload Methods
Lesson 4: Predominant methods, polymorphism and static classes.
- Use of access levels: private, protected, default and public.
- primordial methods
- Using virtual method invocation
- Using varargs to specify variable arguments
- Using the instanceof operator to compare object types
- Wear up and down casts
- Model business problems by using the static keyword
- Implementation of the singleton design pattern
Lesson 5: Abstract and Nested Classes
- Design general-purpose base classes using abstract classes
- Construction of Java abstract classes and subclasses
- Apply the final keyword in Java
- Distinguish between top-level and nested classes
Lesson 6: Interfaces and Lambda Expressions
- Defining a Java interface
- Choosing between interface inheritance and class inheritance
- Extension of an interface
- Default Methods
- Anonymous inner classes
- Defining a Lambda expression
Lesson 7: Collections and Generics
- Create a custom generic class
- Use the type inference diamond to create an object
- Creating a collection using generics
- ArrayList Implementation
- Implementation of a TreeSet
- Implement a HashMap
- Implementation of a Deque Ordering Collections
Lesson 8: Collections, Streams and Filters.
- Describe the Builder pattern
- Iterating through a collection using lambda syntax
- Description of the Stream interface
- Filter a collection using lambda expressions
- Call an existing method using a method reference
- Chain multiple methods together
- Definition of pipelines in terms of lambdas and collections.
Lesson 9: Lambda Integrated Functional Interfaces
- List of built-in interfaces included in java.util.function
- Main interfaces: predicate, consumer, function, provider
- Use primitive versions of base interfaces
- Use binary versions of base interfaces
Lesson 10: Lambda Operations
- Extract data from an object using the map
- Describe the types of stream operations
- Describing the optional class
- Describe lazy processing
- Order a sequence
- Save results to a collection using the collect method
- Group and partition data using the Collectors class
Lesson 11: Exceptions and Assertions
- Defining the purpose of Java exceptions
- Using try and throw statements
- Use of catch, multi-catch and finally clauses
- Automatically close resources with a test statement with resources
- Recognize classes and categories of common exceptions
- Create custom exceptions
- Proof of invariants using assertions
Lesson 12: Java Date/Time API
- Create and manage date-based events
- Create and manage time-based events.
- Combine date and time in a single object
- Work with dates and times in different time zones
- Management of changes resulting from daylight saving time
- Definition and creation of timestamps, periods and durations.
- Format local and zoned dates and times
Lesson 13: I/O Basics
- Describe the basic concepts of input and output in Java.
- Read and write data from the console
- Using streams to read and write files
- Write and read objects using serialization.
Lesson 14: File I/O (NIO.2)
- Using the path interface to operate on file and directory paths
- Use the Files class to check, delete, copy, or move a file or directory
- Using the Stream API with NIO2
Lesson 15: Simultaneity
- Describe operating system task scheduling.
- Create worker threads using Runnable and Callable
- Use an ExecutorService to execute tasks at the same time
- Identifying Potential Threading Issues
- Using Synchronized and Concurrent Atomic to Manage Atomicity
- Use monitor locks to control thread execution order
- Using the java.util.concurrent collections
Lesson 16: The Fork-Join Framework
- Parallelism
- The need for Fork-Join
- job theft
- RecursiveTask
Lesson 17: Parallel Currents
- Review of the key characteristics of the currents
- Describe how to make a flow pipeline run in parallel.
- List the key assumptions required to use a parallel pipeline.
- Definition of reduction
- Describe why reduction requires an associative function.
- Calculate a value using reduce
- Describe the process for decomposing and then merging the work.
- List the key performance considerations for parallel streams
Lesson 18: Database Applications with JDBC
- Defining the JDBC API Design
- Connect to a database using a JDBC driver
- Send queries and get results from the database.
- Specify JDBC driver information externally
- Performing CRUD operations using the JDBC API
Lesson 19: Location
- Describe the benefits of localizing an application.
- Definition of what a locality represents
- Read and set the locale using the Locale object
- Create a resource pack for each location.
- Call a resource bundle from an application
- Change the locale for a resource pack