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


Intro to Java Programming

San Jose State University via Udacity

This course may be unavailable.


In this introductory course, you'll learn and practice essential computer science concepts using the Java programming language. You'll learn about Object Oriented Programming, a technique that allows you to use code written by other programmers in your own programs. You'll put your new Java programming skills to the test by solving real-world problems faced by software engineers.

Why Take This Course?
Java is one of the most popular programming languages used by software developers today. It is the core language used in developing Android apps, and is also commonly used in back-end web development. If you’re new to programming and want to enter either of these fields, this course is a great place to get started.

Even if you don’t have a career trajectory in mind, Java programming is a great option for first-time coders due to its popularity and ease of use. This course will provide you with a solid foundation in computer science and Object Oriented Programming concepts, as well as set you on the path for success as a software engineer.


### Lesson 1: Introduction to Computers, Programming Languages, Algorithms, and the Java Programming Environment

### Lesson 2: Introduction to Classes and Objects

### Lesson 3: Graphics

### Lesson 4: Fundamental Data Types

### Lesson 5: Decisions

### Lesson 6: Iterations

### Lesson 7: Arrays, ArrayLists and Simple Array Algorithms

### Lesson 8: Methods (Parameter Passing, Instance vs. Static Methods)

### Lesson 9: Inheritance

Taught by

Cay Horstmann


2.7 rating, based on 26 Class Central reviews

Start your review of Intro to Java Programming

  • Anonymous
    This is a terrible course for beginning programmers. In many cases I felt the instructors assume students have the knowledge already. Can you believe they started teaching and using java objects on the second lesson? They even haven't touched upon the basics. Don't take it if you have any better choice.
  • Anonymous
    Terrible. The first few lessons are fantastic but this leads to a false sense of security, as the course quickly becomes way, way too technical, assuming a LOT of prior knowledge and setting tasks that are way beyond the beginner.
    Very discouraging. Not recommended.
  • Profile image for Dylan Raithel
    Dylan Raithel
    Good core CS concept coverage, lots of example code. The challenge with java is the huge ecosystem of tooling with lots of fungible duplicates. They haven't really covered this stuff yet, (25% of the way through) but the one thing I wish they did was teach the course with Eclipse and encourage reading the source code more. I find more often than not that reading the source code is faster and more meaningful than using the blueJ abstraction layer / learning IDE, even if the volume of code is overwhelming at first. If you're going to be a professional developer being able to crack open a code base and figure it out is a crucial skill to start developing early.
  • This class really helps you understand basic OOP concepts through Java,although most likely you will need to accompany it by a book of your own. I had to struggle through some of the classes and take a look at some stuff on my own in order to achieve the level they ask for. However, it is definitely NOT an advanced class in Java. If you do end up taking this class know 2 things:
    1) You might need to put in a little extra effort at some points
    2) Once you're done you will definitely feel like you know Java, or at least have a good feel for OOP concepts.
  • Anonymous
    I totally loved the course. The teachers are great and go through the stuff in a good way. They explain it well and they do it in a good speed. The quiz/tasks you get are well thought through and really make you apply what you have learned. I feel it has been the best online free course I have been able to find about Java for beginners.
  • Anonymous
    Awful. Not for beginners. Much too complicated. They skip over really difficult concepts really quickly and assume knowledge of higher level math.
  • Anonymous
    Really poor. Instructions are often ambiguous making completing the problems grindingly painful even if you understand the material well. The numerous talking heads from college students are obnoxious and add nothing.
  • This is a great course! I appreciate the Professor, who has done 670 videos by himself. After a while, every step has an exercise with a piece of code. The learner is gaining depth after every of it and at the end has gone from zero zo hero. It also begins the OOP by an example of a car and the user is programming it with top down approach, which helps to understand the reason to use inheritance. It is a marathon of knowledge, where even at the middle the user has gained so much.
  • Anonymous
    I'm almost half way and find it a good course good though I have had some previous programming experience and know some of the terminology.
  • Anonymous
    At best so so for me. I've really loved some of the other courses (Android fundamentals is A+) However this course has a number of issues, but number one for me is the ambiguity of a lot of the questions. For example, some questions will return fal…
  • Elvis
    This is a poorly thought-out course. They teach like they are talking with fellow advanced java programmers and asking them trick questions, just to say "gotcha!" if they got the answers wrong. I don't see the point in using all this pre-programmed templates in BlueJ when this is a beginner's course and we should be building things from scratch to understand the basics and underlying logic. All I see is a squandered potential for a great course! But thanks for the effort. Next time, please teach it like you're teaching complete noobs.
  • Anonymous
    I have to agree with the other comments about the course being a bit rough for being a introduction course. First, Java is not one of the easier programming languages to take on, second the course feels as if you have prior knowledge of Java and.
    The exercises were are a bit challenging, especially when they look for some answers that were not covered in the chapter which makes it more challenging to follow.

    Beginners to programming might get a bit discouraged.
  • Profile image for Ashton Christopher
    Ashton Christopher
    I finished the course as a complete newbie. Not recommended for come beginners. At times the content is so over one's head that it might lead to total discouragement from programming all together. If you're completely new them better go with the tutorials from or the course from and build a project of your choosing from scratch like a budget calculator or something.
  • Anonymous
    Very poorly done. It jumps ahead and around too much. As a beginner it is very discouraging. If you really want to learn anything get other sources to explain. I wish I could be back and use the time I spent watching these videos for better sources.
  • Anonymous
    Not for beginners, its really easy to get lost and discouraged quickly. It doesn't feel like the presenters are trying to help you, rather trying their best to condescending. Not recommended for beginners.
  • Arash Jamwal
    If you have never written a single line of code this is not the course yo want to enroll
    only enroll if you learned one programming language (java or any other)
  • Anonymous
    This course is a way TOO HARD for a beginner. Absolutely unreasonably. In addition, their grader foes not provide reliable information - the outputs are incorrectly labelled and you'll spend a huge amount of time trying to guess what an increment might be to produce right color because the grader will not let you know where you're wrong.
  • Yana Yakovenko
    Really enjoyed this one. Clear instructions and explanations, effective practice through quizzes. Many thanks to everyone involved in making this course.
  • Anonymous
    It's an TERRIBLE Beginners course!!! , don't bother taking it if your new to JS. They jump way to quick, a simple short lesson for a advanced question.
  • Anonymous
    this is a greate course to introduce yourself to real programming in Java.

    Great Thank to profs Cay & Sara

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.