Java Class Library (Coursera)

Offered by LearnQuest,
Java Class Library (Coursera)

Java Class Library is the fourth and final course in the Core Java Specialization. After completing this course, you will be able to write reusable code that remains type-safe using Java Generics, work with collections of objects, work with files, handle runtime errors, and generally be prepared to move on to learning to use Java frameworks such as Spring Boot and Jakarta EE.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

The Core Java Specialization is part of a series of programming specializations, derived from LearnQuest's private Java Bootcamps, designed to provide the skill set necessary to be hired as an IT developer using Java in many corporate environments.
There are over 4200 classes in the Java 8 class library, with 100s of new ones compared to prior versions of Java. In this course, we will cover additional language features that enable the class library, essential library areas, and provide roadmaps to areas for self-exploration.
To be successful in this course, you should have taken:

Course 3 of 4 in the Core Java Specialization

Syllabus

WEEK 1
Course Overview
This module provides an overview of the Core Java - Java Class Library course. There are over 4200 classes in the Java 8 class library, with hundreds of new ones compared to prior versions of Java. In this course, we will cover additional language features that enable the class library, essential library areas, and provide roadmaps to areas for self-exploration.
Java Generics
In this module, we will learn about a major Java feature, Generics (known as template or parameterized types in some other languages), introduced in Java 5. Generics are a key tool in ensuring type safety.

WEEK 2
Java Collections
In this module, we'll talk about the Java Collection classes, which were introduced in Java 5 and have been expanded upon in Java 8 with the introduction of Java Streams (java.util.stream) technology. Collections give us much more power and capability for managing collections of data than the simple, linear, arrays we have used up to this point in the curricula.

WEEK 3
Exception Handling
Different programming models handle error conditions in different ways. Some, for example, require programmers to check error codes after every function call.
Java, learning from other environments such as C++, takes a different approach known as exception handling. In this module, you will learn how Java deals with exceptions, and learn to both handle and -- when necessary -- create exceptions.

WEEK 4
Input and Output
Java has rich Input and Output (I/O) capabilities, which have evolved constantly over the years. Java can handle network I/O, file I/O; blocking and non-blocking I/O and more. In this module we will look at an overview of I/O, and focus mostly on simple text I/O using files. We will also take a brief look at the extensive improvements made to I/O in Java 7 and Java 8, with readings to provide additional information.

WEEK 5
Enums
Java Enums provide us with the ability to create a fixed set of constant values. They are objects, so they can have methods and properties, but they are a fixed, constant, set, nonetheless. The simplest ones might merely be something like the suits of a deck of cards, but we'll take a more complete look at their capabilities, and how you might use them.

WEEK 6
Annotations
Annotations are a way of attaching meta-data to Java code. Added in Java 5, this passive meta-data facility might not seem important at first, but is the key to how modern Java frameworks work. Spring, Spring Boot, Spring Cloud, NetFlix OSS, Java Persistence Architecture, Jakarta EE (née Java EE) containers, JAX-WS, JAX-RS, and so many others.
In this module, we will look at the Java Annotations technology, look at existing annotations, and -- in the lab -- create a custom annotation, and write code to see that annotation at run-time. This means that you will not only have the ability to use annotations, but also have at least the rudiments necessary to write and process your own annotations, such you have the need.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Exploiting and Securing Vulnerabilities in Java Applications (Coursera) Coursera
University of California, Davis

Exploiting and Securing Vulnerabilities in Java Applications (Coursera)

In this course, we will wear many hats. With our Attacker Hats on, we will exploit Injection issues that allow us to steal data, exploit Cross Site Scripting issues to compromise a users browser, break authentication to gain access to data and functionality reserved for the ‘Admins’, and even exploit vulnerable components to run our code on a remote server and access some secrets.

Jun 22nd 2026
4 Weeks
Concurrent Programming in Java (Coursera) Coursera
Rice University

Concurrent Programming in Java (Coursera)

This course teaches learners (industry professionals and students) the fundamental concepts of concurrent programming in the context of Java 8. Concurrent programming enables developers to efficiently and correctly mediate the use of shared resources in parallel programs. By the end of this course, you will learn how to use basic concurrency constructs in Java such as threads, locks, critical sections, atomic variables, isolation, actors, optimistic concurrency and concurrent collections, as well as their theoretical foundations (e.g., progress guarantees, deadlock, livelock, starvation, linearizability).

Jun 22nd 2026
4 Weeks
Introduction to Java and Object-Oriented Programming (Coursera) Coursera
University of Pennsylvania

Introduction to Java and Object-Oriented Programming (Coursera)

This course provides an introduction to the Java language and object-oriented programming, including an overview of Java syntax and how it differs from a language like Python. Students will learn how to write custom Java classes and methods, and how to test their code using unit testing and test-driven development. Topics include basic data structures like Arrays and ArrayLists and overloading methods.

Jun 22nd 2026
3 Weeks
Introduction à la programmation orientée objet (en Java) (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Introduction à la programmation orientée objet (en Java) (Coursera)

Ce cours introduit la programmation orientée objet (encapsulation, abstration, héritage, polymorphisme) en l'illustrant en langage Java. Il présuppose connues les bases de la programmation (variables, types, boucles, fonctions, ...). Il est conçu comme la suite du cours « Initiation à la programmation (en Java) ».

Jun 21st 2026
5-12 Weeks
Kotlin for Java Developers (Coursera) Coursera
JetBrains

Kotlin for Java Developers (Coursera)

The Kotlin programming language is a modern language that gives you more power for your everyday tasks. Kotlin is concise, safe, pragmatic, and focused on interoperability with Java code. It can be used almost everywhere Java is used today: for server-side development, Android apps, and much more. This course aims to share with you the power and the beauty of Kotlin.

Jun 22nd 2026
5-12 Weeks
Introduction to Object-Oriented Programming with Java (Coursera) Coursera
LearnQuest

Introduction to Object-Oriented Programming with Java (Coursera)

Introduction to OO Programming with Java is course 2 of the Core Java Specialization. After completing this course, you'll be able to create simple Java classes that exhibit the principle of Encapsulation, to import other classes for use, to work with Strings, print output and use advanced math functions. We'll begin with a brief refresher on necessary concepts from Object-Oriented Programming.

Jun 22nd 2026
4 Weeks
Inheritance and Data Structures in Java (Coursera) Coursera
University of Pennsylvania

Inheritance and Data Structures in Java (Coursera)

This course provides a comprehensive look at Java inheritance, including access modifiers and overriding methods. Students are introduced to abstract classes, and will learn how to read and write to files, use regular expressions for parsing text, and how to leverage complex data structures like collections and maps. Additionally, this course offers strategies for catching errors and debugging code, including an overview of Eclipse’s debugging tool.

Jun 22nd 2026
4 Weeks
Mastering the Software Engineering Interview (Coursera) Coursera
University of California, San Diego

Mastering the Software Engineering Interview (Coursera)

You’ve hit a major milestone as a computer scientist and are becoming a capable programmer. You now know how to solve problems, write algorithms, and analyze solutions; and you have a wealth of tools (like data structures) at your disposal. You may now be ready for an internship or (possibly) an entry-level software engineering job. But can you land the internship/job? It depends in part on how well you can solve new technical problems and communicate during interviews. How can you get better at this? Practice!

Jun 22nd 2026
4 Weeks
Core Java (Coursera) Coursera
Codio

Core Java (Coursera)

Code and run your first Java program in minutes without installing anything! This course is designed for learners with limited coding experience, building on a solid foundation of Java, learners will dive into key Java classes, interfaces, and frameworks. The modules in this course cover developer best practices, data handling, and connecting to web-based systems. Completion of an introductory Java sequence such as Codio's Hands-On Java Introduction is recommended.

Jun 22nd 2026
3 Weeks
Introduction to Java Enterprise Edition (EE) (Coursera) Coursera
LearnQuest

Introduction to Java Enterprise Edition (EE) (Coursera)

This course focuses on JEE as a platform. We discuss the motivation and purpose, as well as some of the frequently used libraries and technologies, in the Java Enterprise Edition. We take a look at Web basics, our building blocks for understanding how the internet works. Then, we get very hands on with understanding the Servlet hierarchy, and how servlets handle request/response cycles. Finally, we learn about transferring control via forward and redirect mechanisms.

Jun 22nd 2026
2 Weeks
Distributed Programming in Java (Coursera) Coursera
Rice University

Distributed Programming in Java (Coursera)

This course teaches learners (industry professionals and students) the fundamental concepts of Distributed Programming in the context of Java 8. Distributed programming enables developers to use multiple nodes in a data center to increase throughput and/or reduce latency of selected applications. By the end of this course, you will learn how to use popular distributed programming frameworks for Java programs, including Hadoop, Spark, Sockets, Remote Method Invocation (RMI), Multicast Sockets, Kafka, Message Passing Interface (MPI), as well as different approaches to combine distribution with multithreading.

Jun 22nd 2026
4 Weeks