Skip to main content
CoursebeginnerFree

Java Programming: Basic Skills

Codio

⏱ Approximately 21 hours

Codio's introductory Java course on edX for people who have never programmed, run in the browser with no setup. It covers variables, operators, conditionals, loops and arrays, so learners can write, run and debug simple Java programs.

Visit resource

More resources on Java

WebsiteFree

Vogella

Lars Vogel's tutorial library covers core Java syntax, collections, generics, and the surrounding toolchain: Eclipse, Maven, Gradle, JUnit. Each guide is a self-contained walkthrough with runnable code, useful for setting up a working Java development environment.

WebsiteFree

Baeldung

Article series on Java and the Spring ecosystem, each focused on one narrow task: a Jackson annotation, a JPA query, a security config. Editorially reviewed, with runnable GitHub examples, so it works as a reference while building applications.

CourseFree

Oracle Java Tutorials

Learn Java programming with Oracle's official Java Tutorials. Master Java fundamentals and advanced concepts with this comprehensive course.

CourseFree

Java Programming: Solving Problems with Software

Learn to code in Java and improve your programming and problem-solving skills. You will learn to design algorithms as well as develop and debug programs. Using custom open-source classes, you will write programs that access and transform images, websites, and other types of data. At the end of the course you will build a program that determines the popularity of different baby names in the US over time by analyzing comma separated value (CSV) files. After completing this course you will be able to: 1. Edit, compile, and run a Java program; 2. Use conditionals and loops in a Java program; 3. Use Java API documentation in writing programs. 4. Debug a Java program using the scientific method; 5. Write a Java method to solve a specific problem; 6. Develop a set of test cases as part of developing a program; 7. Create a class with multiple methods that work together to solve a problem; and 8. Use divide-and-conquer design techniques for a program that uses multiple methods.

VideoFree

Java Programming: Object Oriented Programming Full Course

Comprehensive Java OOP tutorial by Bro Code, highly upvoted in r/learnprogramming

BookPaid

Effective Java

Joshua Bloch's collection of items on Java API and library design: when to prefer static factories, how equals and hashCode interact, generics pitfalls, concurrency idioms. Readers gain judgment about idiomatic Java rather than syntax knowledge. Assumes working fluency.

See all Java resources →