Core Java: Fundamentals


This course includes
Instructor Led (Add-on)
AI Tutor (Add-on)

Use the Core Java Fundamentals course to learn the skills in Java programming. The Java course provides competency in all concepts of Java programming and includes topics such as objects, classes, inheritance, exceptions, assertions, logging, and generic programming. This Java online course provides students with knowledge in Java SE 7 enhancements including improved concurrency utilities and new file I/O API. The interactive learning resources highlight explanations of advanced Java programming techniques.


15+ Lessons | 98+ Quizzes | 100+ Flashcards | 100+ Glossary of terms


101+ Pre Assessment Questions | 131+ Post Assessment Questions |

Video Lessons

23+ Videos | 02:37+ Hours

Here's what you will learn

Download Course Outline

Lessons 1: Preface

  • To the Reader
  • A Tour of This Course
  • Conventions

Lessons 2: An Introduction to Java

  • Java as a Programming Platform
  • The Java “White Paper” Buzzwords
  • Java Applets and the Internet
  • A Short History of Java
  • Common Misconceptions about Java

Lessons 3: The Java Programming Environment

  • Installing the Java Development Kit
  • Using the Command-Line Tools
  • Using an Integrated Development Environment
  • JShell

Lessons 4: Fundamental Programming Structures in Java

  • A Simple Java Program
  • Comments
  • Data Types
  • Variables and Constants
  • Operators
  • Strings
  • Input and Output
  • Control Flow
  • Big Numbers
  • Arrays

Lessons 5: Objects and Classes

  • Introduction to Object-Oriented Programming
  • Using Predefined Classes
  • Defining Your Own Classes
  • Static Fields and Methods
  • Method Parameters
  • Object Construction
  • Packages
  • JAR Files
  • Documentation Comments
  • Class Design Hints

Lessons 6: Inheritance

  • Classes, Superclasses, and Subclasses
  • Object: The Cosmic Superclass
  • Generic Array Lists
  • Object Wrappers and Autoboxing
  • Methods with a Variable Number of Parameters
  • Enumeration Classes
  • Reflection
  • Design Hints for Inheritance

Lessons 7: Interfaces, Lambda Expressions, and Inner Classes

  • Interfaces
  • Lambda Expressions
  • Inner Classes
  • Service Loaders
  • Proxies

Lessons 8: Exceptions, Assertions, and Logging

  • Dealing with Errors
  • Catching Exceptions
  • Tips for Using Exceptions
  • Using Assertions
  • Logging
  • Debugging Tips

Lessons 9: Generic Programming

  • Why Generic Programming?
  • Defining a Simple Generic Class
  • Generic Methods
  • Bounds for Type Variables
  • Generic Code and the Virtual Machine
  • Restrictions and Limitations
  • Inheritance Rules for Generic Types
  • Wildcard Types
  • Reflection and Generics

Lessons 10: Collections

  • The Java Collections Framework
  • Interfaces in the Collections Framework
  • Concrete Collections
  • Maps
  • Views and Wrappers
  • Algorithms
  • Legacy Collections

Lessons 11: Graphical User Interface Programming

  • A History of Java User Interface Toolkits
  • Displaying Frames
  • Displaying Information in a Component
  • Event Handling
  • The Preferences API

Lessons 12: User Interface Components with Swing

  • Swing and the Model-View-Controller Design Pattern
  • Introduction to Layout Management
  • Text Input
  • Choice Components
  • Menus
  • Sophisticated Layout Management
  • Dialog Boxes

Lessons 13: Concurrency

  • What Are Threads?
  • Thread States
  • Thread Properties
  • Synchronization
  • Thread-Safe Collections
  • Tasks and Thread Pools
  • Asynchronous Computations
  • Processes

Lessons 14: JavaFX

  • A Brief History of Java GUI Programming
  • Displaying Information in a Scene
  • Event Handling
  • Layout
  • User Interface Controls
  • Properties and Bindings
  • Long-Running Tasks in User Interface Callbacks

Appendix A

Customer Review

I have reviewed uCertify Pearson Core Java: Fundamentals. The course provides competency in all concepts of Java programming. The interactive learning resources highlight complete descriptions of a new language with insightful explanations of advanced Java programming techniques. I would recommend this course to any professional who wants to learn Java.