Contact Us

« Important Announcement » Contact Us 877-206-0106 | USA Flag

Thank you for your interest in LearnQuest.

Your request is being processed and LearnQuest or a LearnQuest-Authorized Training Provider will be in touch with you shortly.


Thank you for your interest in Private Training.

We look forward to helping you develop the perfect training solution to help you meet your company's goals.

For immediate assistance, speak with one of our representatives using the chat module below. Otherwise, LearnQuest or a LearnQuest-Authorized Training Provider will be in touch with you shortly.


Thank you for your interest in LearnQuest!

Now, you will be able to stay up-to-date on our latest course offerings, promotions, and training discounts. Watch your inbox for upcoming special offers.


Date: xxx

Location: xxx

Time: xxx

Price: xxx

Please take a moment to fill out this form. We will get back to you as soon as possible.

All fields marked with an asterisk (*) are mandatory.

Object-Oriented Programming with Java

2,925 USD
5 Days
Classroom Training, Online Training

AWS Training Pass

Take advantage of flexible training options with the AWS Training Pass and get Authorized AWS Training for a full year.

Learn More

Prices reflect a 22.5% discount for IBM employees.
Prices reflect a 24% discount for Kyndryl employees.
Prices reflect the Accenture employee discount.
Prices shown are the special AWS Partner Prices.
Prices reflect the Capgemini employee discount.
Prices reflect the UPS employee discount.
Prices reflect the ??democompanyname?? employee discount.
GSA Private/Onsite Price: ??gsa-private-price??
For GSA pricing, please go to GSA Advantage.

Class Schedule

Delivery Formats

Sort results

Filter Classes

Guaranteed to Run





  • Date: 8-Jan-2024 to 12-Jan-2024
    Time: 9AM - 5PM US Eastern
    Location: Virtual
    Language: English
    Delivered by: LearnQuest
    Price: 2,925 USD
  • Date: 29-Jan-2024 to 2-Feb-2024
    Time: 9AM - 5PM US Eastern
    Location: Virtual
    Language: English
    Delivered by: LearnQuest
    Price: 2,925 USD
View Global Schedule

Course Description


This course is designed to provide students with the knowledge and skills to become productive using object-oriented programming techniques in Java. Students are introduced to the fundamental concepts of object-oriented programming and how they are successfully applied in Java through classroom-based instruction and practical exercises.

A student will quickly master the Java programming language and the packages that constitute its rich set of core libraries such as the Collections Framework.

This course can be hosted on a variety of IDEs such as RAD, Eclipse, MyEclipse Blue, Mars and SpringSource Tool Suite (STS). Please let your sales representative know the IDE you are currently using.


This course is one step in the following Learning Journeys:

  1. Java - Core
  2. Java - Web Development


Upon completion of the course, students will be able to:
  • Explain the fundamental principles of object-orientation
  • Productively apply the language fundamentals of Java
  • Design and develop “well engineered” Java classes
  • Understand the use and implications of class inheritance and composition
  • Successfully apply the principles of polymorphism
  • Describe the core Java API including I/O and Collections in depth


  • Anyone interested in learning Java
  • Programmers
  • Technical Managers
  • Application Developers


    • Understand the fundamentals of software development in either a procedural or object-oriented language


  • An Introduction to Java
    • Key Java benefits
    • Write-Once Run Anywhere (WORA)
    • Compilation to execution
    • Portability implications
    • Java packages
    • Familiar C/C++ syntax
    • Rich library support
    • Library standards
    • Extensive documentation
    • JDBC: Java Database Connectivity
    • Security
    • Internationalization
    • Performance
    • Java product suite
    • Java JDK vs JRE installation
    • The installed JDK
    • The bin directory
    • Running Java
  • Java Language Fundamentals - Types
    • Creating Java statements
    • Structure of Java files
    • Simple program with main()
    • Java naming conventions
    • Java reserved words
    • Comments
    • Primitive data types
    • Integer number types
    • Real number types
    • Binary Literals
    • Char type
    • Boolean type
    • Creating primitives
    • Naming conventions for primitives
    • Initializing primitives
    • Range of primitive types
    • Wrapper classes
    • Boxing and unboxing
    • Java arrays
    • Initializing Arrays
    • Arrays and Objects
  • Java Language Fundamentals – Flow of Control
    • Java operators
    • Operator precedence
    • Branching and looping
    • Code blocks
    • if else statement
    • switch statement
    • switch string statement
    • while statement
    • do-while statement
    • for statement
    • Enhanced for statement
    • break statement
    • continue statement
  • An Introduction to Object-Oriented Programming – Classes and Objects
    • Use of Object-Oriented programming
    • Object-Oriented definitions
    • Class definition
    • Attributes
    • Methods
    • An example Class
    • Method signatures
    • Objects
  • Creating Classes
    • Java directory system – packages
    • Packages and CLASSPATH
    • Classes and files
    • Declaring a class
    • Classes and packages
    • Anatomy of a class
    • Adding attributes to a class
    • Adding methods to a class
    • Method signatures
    • Variable argument methods
    • Method variables
    • Static attributes
    • More on visibility
    • Declaring constants
    • Constructors
    • Multiple constructors
    • Static methods
  • Using Java Objects
    • Creating an object
    • The process of object construction
    • The reference table
    • Working with objects
  • Namespaces and Java Libraries
    • JAR files
    • Packages and JARs
    • JARs and namespaces
    • Java packages
    • Mapping packages to the file system
    • The import statement
    • Using imported classes
    • Namespace clashes
    • Implicit imports
    • The String class
    • Dynamic strings with StringBuffer
    • The Math class
  • OO Programming Relationships
    • Inheritance
    • Inheritance limitations
    • Interfaces
    • Interface example
    • Polymorphism
    • Association
    • OO Design
    • Abstraction
    • Generalization and specialization
    • Finding classes
    • Noun-verb filtering
  • Inheritance
    • Inheritance in Java
    • java.lang.Object
    • Superclass
    • Subclass
    • Implications of extends
    • Overloading existing methods
    • Overriding existing methods
    • The super keyword
    • Constructors and inheritance
    • The protected modifier
    • The “is a” relationship
    • Abstracted classes
  • Abstract Classes
    • Abstract classes
    • Concrete classes
    • Using abstract references
    • Building a concrete class
    • Casting
    • Upcasting
    • Downcasting
  • Interfaces
    • Interfaces and abstract classes
    • Defining an interface
    • Implementing an interface
    • Using an interface
    • Design implications
    • Extending interfaces
    • Implementing an interface
    • Design issues with interfaces
    • Design practices
    • Function Interfaces
    • Lambda Expressions
  • Polymorphism
    • Polymorphism mechanics
    • Object creation diagram
    • Reference table and polymorphism
    • Creating object references
    • Upcasting and polymorphism
  • Generics
    • What is a Generic?
    • Defining Generics
    • Generic formal type parameters
    • Declaration of Generics
    • Generics and sub-typing
    • Wildcards
    • null as a type
    • Bounded wildcards
    • Generic methods
    • Generics methods vs. sub-typing
    • Using Generics with legacy code
    • Erase and Transition
    • Generic class sharing
    • Casting and instanceof with Generics
    • Generics as array types
    • Class literals as run-time type tokens
    • Wildcard capture
    • Generic Instance Creation
  • Collections
    • Collections
    • The Collections framework
    • The Collection interface
    • The Set collections
    • Using a Set
    • Important methods of the Set interface
    • The Hashset
    • The Iterator interface
    • Sorted sets
    • The List collections
    • The Map collections
    • Linked collections
  • Input and Output
    • Input and output in Java
    • Reading lines of text
    • Properties file
    • Stream hierarchy
    • InputStream class
    • OutputStream class
    • Buffered vs. unbuffered
    • File class
    • Text files
    • Writing to a text file
    • java.nio.file package
  • Exceptions
    • Handling exceptions
    • Built in exceptions
    • Throwing exceptions from main()
    • The stack trace
    • Working with try / catch
    • Multiple catch blocks
    • Try-with-resources statement
    • Catching Multiple Exception Types and re-throwing Exceptions with Improved Type Checking
    • Different types of exceptions
    • Runtime problems
    • Throwable hierarchy
    • Checked and unchecked exceptions
    • The finally block
    • Throwing multiple exceptions
    • Writing custom exceptions
    • Dealing with error objects
    • Dealing with exceptions locally
    • Designing with exceptions
  • Annotations
    • What is an Annotation
    • The reason for Annotations
    • Annotations vs Javadoc
    • Annotation syntax
    • Types of Annotations
    • Annotation declarations
    • Simple Annotations
    • Override Annotation
    • Deprecated Annotation
    • Suppress Warnings Annotation
    • Meta-annotations
    • Target meta-annotation
    • Retention meta-annotation
    • Documented meta-annotation
    • Inherited meta-annotation
    • Examples of Annotation use
  • Enums
    • What is an Enum?
    • Enum types
    • Extending an Enum
    • Enum constructors
    • Built-in Enum methods
    • Adding fields and methods to Enums
    • Enums and Generics
    • Enums in switch/case
    • When to use Enums
  • Appendix I: Optional Topics—An Introduction to Enterprise Java
    • Goals of JEE systems
    • Container-managed systems
    • WebSphere JEE containers
    • N-tier JEE applications
    • Presentation tier
    • The WebSphere web container
    • HTML
    • Serving HTML in WebSphere
    • Java Server Pages (JSPs)
    • Serving JSP in WebSphere
    • Key JSP issues
    • Controller/mediator tier
    • Servlets
    • The role of a Servlet
    • Key Servlet issues
    • Domain tier
    • The EJB container
    • The EJB specification
    • What is EJB?
    • EJB fundamentals
    • Overview of EJB container responsibilities
    • Entity bean overview
    • Session bean overview
    • Message bean overview
    • EJB deployment description
    • EJB summary
    • Java Messaging Service (JMS)
    • Point to point communication
    • Publish-subscribe communications
  • 2023 Top 20 Training Industry Company - IT Training

    Need Help?

    Call us toll free at 877-206-0106 or e-mail us at

    Personalized Solutions

    Need a personalized solution for your Training? Contact us, and one of our training advisors will help you find the best solution.

    Contact Us

    Need Help?

    Do you have a question about the courses, instruction, or materials covered? Do you need help finding which course is best for you? We are here to help!

    Talk to us

    Stretch Your 2023 Training Budget into 2024

    Maximize your training investment with LearnPass' flexible options.

    Learn More


    Self-Paced Training Info

    Learn at your own pace with anytime, anywhere training

    • Same in-demand topics as instructor-led public and private classes.
    • Standalone learning or supplemental reinforcement.
    • e-Learning content varies by course and technology.
    • View the Self-Paced version of this outline and what is included in the SPVC course.
    • Learn more about e-Learning

    Course Added To Shopping Cart







    Self-Paced Training Terms & Conditions


    Sorry, there are no classes that meet your criteria.

    Please contact us to schedule a class.

    STOP! Before You Leave

    Save 0% on this course!

    Take advantage of our online-only offer & save 0% on any course !

    Promo Code skip0 will be applied to your registration

    Nothing yet
    here's the message from the cart

    To view the cart, you can click "View Cart" on the right side of the heading on each page
    Add to cart clicker.

    Purchase Information

    ??elearning-coursenumber?? ??coursename??
    View Cart

    Need more Information?

    Speak with our training specialists to continue your learning journey.


    Delivery Formats


    By submitting this form, I agree to LearnQuest's Terms and Conditions

    heres the new schedule
    This website uses third-party profiling cookies to provide services in line with the preferences you reveal while browsing the Website. By continuing to browse this Website, you consent to the use of these cookies. If you wish to object such processing, please read the instructions described in our Privacy Policy.
    Your use of this LearnQuest site affirms your consent to our use of session and persistent cookies to track how you use our website.