Course Code: OMEGA-205
Course Title: Preparation for OCA/OCP Java SE 8 Programmer Exams
Duration: 3 Days

The main goal of this course is to help you

  • to become Oracle Certified Java Programmer
  • to acquire a solid foundation in Java

  • Java Developers

Part 1:
Preparation for OCA Java SE 8 Programmer Exam

Module 1 - Java Building Blocks
Fields and Methods,
Package Declarations and Imports
Creating Objects, Object References
Declaring and Initializing Variables
Variable Scope, Default Initialization of Variables

Module 2 - Operators and Statements
Java Operators, Unary and Binary Operators
Java Statements: if-then, if-then-else, switch,
while, do-while, for
break and continue

Module 3 - Core Java APIs
String, StringBuilder, Arrays
ArrayList, Date and Times

Module 4 - Methods and Encapsulation
Designing Methods, Varargs,
Access Modifiers,
Passing Parameters,
Overloading,
Constructors,
Lambdas

Module 5 - Class Design
Class Inheritance
Abstract Class
Interfaces
Polymorphism

Module 6 - Exceptions
Understanding Exceptions and Exception Types
Throwing an Exception
Using a try Statement
Adding a finally Block
Catching Various Types of Exceptions
Throwing a Second Exception
Runtime Exceptions
Checked Exceptions
Errors
Calling Methods That Throw Exceptions

Part 2:
Preparation for OCP Java SE 8 Programmer Exam

Module 1 - Advanced Class Design
instanceof, virtual method invocation,
Annotating Overridden Methods
Coding equals, hashCode, and toString
Enums,
Nested Classes: Inner Classes, Anonymous Classes, static nested classes

Module 2 - Design Patterns and Principles
Designing an Interface,
Functional Programming,
Implementing Polymorphism,
Understanding Design Principles,
Working with Design Patterns

Module 3 - Generics and Collections
Generics,
Lists, Sets, Maps, and Queues,
Comparator vs. Comparable,
Searching and Sorting,
Additions in Java 8
Using Method References
Removing Conditionally
Updating All Elements
Looping through a Collection
Using New Java 8 Map APIs

Module 4 - Functional Programming
Built-In Functional Interfaces
Supplier,
Consumer and BiConsumer
Predicate and BiPredicate
Function and BiFunction
UnaryOperator and BinaryOperator
Returning an Optional
Streams
Working with Primitives
Advanced Stream Pipeline Concepts

Module 5 - Dates, Strings, and Localization

Module 6 - Exceptions and Assertions
Creating Custom Exceptions,
Using Multi-catch,
Using Try-With-Resources,
Try-With-Resources Basics,
AutoCloseable,
Suppressed Exceptions,
Rethrowing Exceptions,
Assertions

Module 7 - Concurrency
Threads,
ExecutorService,
Synchronizing Data Access,
Concurrent Collections,
Parallel Streams,
Managing Concurrent Processes,
Identifying Threading Problems,
Understanding Liveness,
Managing Race Conditions

Module 8 - IO
Files and Directories,
Streams

Module 9 - NIO.2
Paths and Files,
File Attributes,
New Stream Methods

Module 10 - JDBC
Relational Databases and SQL,
Interfaces of JDBC,
Connecting to a Database,
Obtaining a Statement,
Executing a Statement,
Getting Data from a ResultSet,
Closing Database Resources,
Dealing with Exceptions