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

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.

Nov 9th 2026
3 Weeks
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.

Nov 9th 2026
4 Weeks
C Programming: Language Foundations - 2 (Coursera) Coursera
Institut Mines-Telecom,Dartmouth College

C Programming: Language Foundations - 2 (Coursera)

In this course you will learn to use logical statements and arrays in C. Logical statements are used for decision-making with follow-up instructions, based on conditions you define. Arrays are used to store, keep track of, and organize larger amounts of data. You will furthermore implement some fundamental algorithms to search and sort data.

Nov 9th 2026
3 Weeks
Data Structures in C (Coursera) Coursera
University of Michigan

Data Structures in C (Coursera)

Covering dynamic memory allocation for optimizing memory utilization, Data Structures in C explores ways to handle multiple variables collectively. In this course, you’ll delve into the central concept of pointers for managing the storage and retrieval of memory. Explore and understand structures, a C-specific user-defined data type combining assorted data items.

Nov 9th 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.

Nov 9th 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).

Nov 9th 2026
4 Weeks
The Java Language (Coursera) Coursera
LearnQuest

The Java Language (Coursera)

This is the second course in the Java as a Second Language Specialization. In this course, we'll take a look at Java data types, discuss what primitive data types are, and explain data classes. We'll also explore characters and strings and you'll add a new class in the lab. Next, we'll take a look at Java Control Structures. We'll explain IF statements, Loops, and arrays, and will discuss Switch Statements and the Java Programming Environment.

Nov 9th 2026
3 Weeks
Parallel Programming in Java (Coursera) Coursera
Rice University

Parallel Programming in Java (Coursera)

This course teaches learners (industry professionals and students) the fundamental concepts of parallel programming in the context of Java 8. Parallel programming enables developers to use multicore computers to make their applications run faster by using multiple processors at the same time. By the end of this course, you will learn how to use popular parallel Java frameworks (such as ForkJoin, Stream, and Phaser) to write parallel programs for a wide range of multicore platforms including servers, desktops, or mobile devices, while also learning about their theoretical foundations including computation graphs, ideal parallelism, parallel speedup, Amdahl's Law, data races, and determinism.

Nov 9th 2026
4 Weeks
More C# Programming and Unity (Coursera) Coursera
University of Colorado System

More C# Programming and Unity (Coursera)

This course is the second course in the specialization about learning how to develop video games using the C# programming language and the Unity game engine on Windows or Mac. Why use C# and Unity instead of some other language and game engine? Well, C# is a really good language for learning how to program and then programming professionally. Also, the Unity game engine is very popular with indie game developers; Unity games were downloaded 16,000,000,000 times in 2016! Finally, C# is one of the programming languages you can use in the Unity environment.

Nov 9th 2026
4 Weeks
Enterprise Java Beans (EJBs) and the Jakarta Persistence API (JPA) (Coursera) Coursera
LearnQuest

Enterprise Java Beans (EJBs) and the Jakarta Persistence API (JPA) (Coursera)

The EJB architecture was the first component-based development model for Java EE specification. It consists of three main components; enterprise beans (EJBs), the EJB container, and the Java application server. In this course students will develop EJBs to run it run inside an EJB container, that is running on a Java EE compliant application server. Students will see that EJB Components enables you to build scalable and accessible enterprise applications

Nov 9th 2026
4 Weeks