We may earn an affiliate commission when you visit our partners.
Course image
Brandon Krakowsky

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.

Enroll now

Two deals to help you save

What's inside

Syllabus

Module 1 : Introduction to Java, Classes, & Eclipse
Welcome to Java! This first module provides an introduction to the Java language and object-oriented programming. It includes an overview of Java syntax, in particular, how it differs from a language like Python. Topics will include variables and data types, loops and conditionals, printing to the console, scanning for user input, and code documentation. This module also explains the structure and inner-workings of a Java class and teaches you how to define your own custom classes and methods.
Read more
Module 2 : Unit Testing, Arrays, & ArrayLists
In this module, you will be taught to test your code to get it working. The best way to do this is to write a set of unit tests that you can run against your program, at any time. In this module, we'll learn how to do unit testing in Java, and why we want to do it. We’ll also learn all about Java Arrays, which are collections of items, and ArrayLists, which are kind of like arrays, but much more flexible. These work just like lists in Python. ArrayLists are part of Java’s larger Collections Framework, which we’ll continue to reference throughout this course.
Module 3 : Static Variables, Methods, & Polymorphism Using Overloading
So far, we’ve been defining variables as instance variables in our Java classes. Instance variables are just variables defined inside a class, and every instance of a class can have a different value for an instance variable. In this module, we’ll look at defining static variables in our Java classes. Static variables are also defined as variables inside a class, but with the keyword 'static'. Static variables have the same value for every instance of a class. In fact, you don’t even need to create an instance of a class to use a static variable! We’ll also look at static methods. And just like static variables, you don’t need to create an instance of a class to use, or call, a static method. In this module, we’re also going to introduce polymorphism, which refers to overloading and overriding. We’ll focus on overloading, which is having two or more methods in the same class, with the same name.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Strengthens intermediate learners in their background knowledge of core Java concepts, including data structures and object-oriented programming
Builds a strong foundation for beginners in Java programming and object-oriented programming, introducing the basics of both topics
Introduces learners to development best practices like test-driven development, using unit testing, and coding documentation

Save this course

Save Introduction to Java and Object-Oriented Programming to your list so you can find it easily later:
Save

Reviews summary

Highly rated introduction to java course

Learners say this largely positive course is an engaging introduction to Java for beginners. The instructor provides detailed and easy-to-understand instructions, and the coding demonstrations help learners follow along and learn effectively. Assignments are challenging but have helped learners develop a strong foundation in Java. However, a few learners have experienced difficulties with the autograders and testing environment, but overall, this course has received largely positive reviews.
Brandon's lectures are clear and easy to understand.
"Great Lectures from Brandon."
"The lecturer was excellent."
"The course is very good"
Coding demonstration videos are engaging and help learners code along.
"The coding demonstration videos are extremely helpful."
"Coding practice is good to learn Java programming grammer and it is very fun."
"It is a great practical introduction course with challenging assignments."
Assignments are challenging but enhance learning.
"Detailed and easy to understand instructions."
"It is a great practical introduction course with challenging assignments."
"I learned a lot! Thanks!"
Some learners found the course difficult for beginners.
"Although this is a supposed to be an intro course to Java, I personally feel like the fast pace doesn't help laying a strong foundation and I felt confused about concepts while doing the exercises and had to do additional research."
"If you know Java or are familiar with programming you might be fine, but if you don't know programming and expect to learn and understand what you are being taught than I would avoid this course and teacher."
Some learners have experienced bugs with the autograders.
"The autograders have several bugs."
"Codio gave me a lot of issues with saying I had errors on lines of codes that were provided in the assignment."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Introduction to Java and Object-Oriented Programming with these activities:
Create a study guide for Java
Organize and consolidate your notes, assignments, and other materials to create a comprehensive study guide.
Browse courses on OOP
Show steps
  • Gather all relevant materials.
  • Summarize key concepts and definitions.
  • Highlight important formulas and code snippets.
  • Review your study guide regularly.
Watch Java tutorials on YouTube
Expand your knowledge by watching video tutorials on topics covered in the course.
Browse courses on YouTube
Show steps
  • Search for Java tutorials on YouTube.
  • Watch tutorials on topics you are interested in or struggling with.
Join a Java study group
Engage with other students and discuss Java concepts to deepen your understanding and identify areas for improvement.
Show steps
  • Find a study group on campus or online.
  • Attend study group meetings regularly.
  • Participate in discussions and ask questions.
Three other activities
Expand to see all activities and additional details
Show all six activities
Read Head First Java
Reinforce your understanding of Java syntax and object-oriented programming by reading a popular introductory book.
Show steps
  • Purchase the book or borrow it from the library.
  • Read the chapters in order, taking notes on any unfamiliar concepts.
  • Complete the exercises at the end of each chapter.
Solve Java coding challenges on LeetCode
Enhance your problem-solving and coding skills by tackling Java coding challenges on LeetCode.
Show steps
  • Create a LeetCode account.
  • Select a difficulty level and start solving problems.
  • Review your solutions and learn from your mistakes.
Create a Java tutorial for beginners
Solidify your understanding of Java by creating a tutorial that explains the basics to beginners.
Browse courses on OOP
Show steps
  • Outline the key concepts you want to cover.
  • Write clear and concise explanations.
  • Include code examples and exercises.

Career center

Learners who complete Introduction to Java and Object-Oriented Programming will develop knowledge and skills that may be useful to these careers:
Java Developer
The Java Developer is an essential role in many industries, including finance, healthcare, and e-commerce. These developers specialize in the Java programming language, which is used to build a variety of applications, including mobile apps and web services. Because Java is so widely used, the Java Developer market is always in demand and this course is a great way to prepare for a career as one. By learning the basics of Java programming including data structures, loops, and conditionals, testing methods, and more, you will build the foundation for a successful career as an entry-level Java Developer.
Software Engineer
Software Engineers design, develop, and maintain software systems. They can work in a variety of industries, including technology, finance, and healthcare. Object-oriented programming (OOP) is one of the core foundations of software engineering and this course will help you master the key concepts of OOP, a critical skill for a Software Engineer. In this course, you will also learn how to create custom classes and methods and how to test code, skills that are essential to success as a Software Engineer.
Web Developer
Web Developers are responsible for the design, development, and maintenance of websites and web applications. They must be proficient in a variety of programming languages, including Java. This course will help you master the basics of Java programming, including data structures, loops, and conditionals, testing methods, and more, which will provide you with a strong foundation for a career as a Web Developer.
Mobile Developer
Mobile Developers are responsible for the design, development, and maintenance of mobile applications. They must be proficient in a variety of programming languages, including Java. This course will help you master the basics of Java programming and provide you with the foundation needed to succeed as a Mobile Developer.
Database Administrator
Database Administrators are responsible for the design, development, and maintenance of databases. They must be proficient in a variety of programming languages, including Java. This course will help you master the basics of Java programming and provide you with the foundation needed to succeed as a Database Administrator.
Data Scientist
Data Scientists use data to solve problems and make predictions. They must be proficient in a variety of programming languages, including Java. The skills you will learn in this course will build a foundation for a career as a Data Scientist, as this role requires the ability to test code, use data structures, and understand key OOP concepts.
Systems Analyst
Systems Analysts are responsible for the analysis, design, and implementation of computer systems. They must be proficient in a variety of programming languages, including Java. This course will help you master the basics of Java programming, including data structures, loops, and conditionals, testing methods, and more, which will provide you with a foundation for a successful career as a Systems Analyst.
Computer Programmer
Computer Programmers use programming languages to create software applications. They must be proficient in a variety of programming languages, including Java. This course will help you master the basics of Java programming, including data structures, loops, and conditionals, testing methods, and more, which will provide you with a foundation for a career as a Computer Programmer.
Information Technology Specialist
Information Technology Specialists provide technical support to users of computer systems. They must be proficient in a variety of programming languages, including Java. The skills learned in this course will provide you with a strong foundation for a career as an Information Technology Specialist.
Software Tester
Software Testers are responsible for testing software applications to ensure that they are free of defects. They must be proficient in a variety of programming languages, including Java. This course will help you master the basics of Java programming, including data structures, loops, and conditionals, testing methods, and more, which will provide you with a strong foundation for a career as a Software Tester.
Technical Writer
Technical Writers create documentation for software applications and other technical products. They must be proficient in a variety of programming languages, including Java. This course will help you master the basics of Java programming, including data structures, loops, and conditionals, testing methods, and more, which will provide you with a foundation for a career as a Technical Writer.
Project Manager
Project Managers are responsible for the planning, execution, and completion of projects. They must be proficient in a variety of programming languages, including Java. This course may be useful for those interested in a career as a Project Manager, as it will provide you with a foundation in the basics of Java programming.
Product Manager
Product Managers are responsible for the planning, development, and marketing of software products. They must be proficient in a variety of programming languages, including Java. This course may be useful for those interested in a career as a Product Manager, as it will provide you with a foundation in the basics of Java programming.
Business Analyst
Business Analysts are responsible for the analysis and design of business processes. They must be proficient in a variety of programming languages, including Java. This course may be useful for those interested in a career as a Business Analyst, as it will provide you with a foundation in the basics of Java programming.
Quality Assurance Analyst
Quality Assurance Analysts are responsible for the testing and validation of software products. They must be proficient in a variety of programming languages, including Java. This course may be useful for those interested in a career as a Quality Assurance Analyst, as it will provide you with a foundation in the basics of Java programming.

Reading list

We've selected nine books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Introduction to Java and Object-Oriented Programming.
Comprehensive guide to Java concurrency. It covers topics such as thread safety, synchronization, and performance. This book would be a good choice for students who want to learn how to write concurrent Java code.
Provides a set of guidelines for writing effective Java code. It covers topics such as object-oriented design, coding conventions, and performance optimization. This book would be a good choice for students who want to learn how to write high-quality Java code.
Comprehensive reference guide to the Java language. It covers all aspects of the language, from the basics to the most advanced features. This book would be a good choice for students who want to learn more about Java and its features.
Great introduction to Java for beginners. It covers the basics of the language, such as variables, data types, operators, and control flow. It also provides a good overview of object-oriented programming concepts, such as classes, objects, and inheritance. This book would be a good choice for students who are new to Java and want to learn the basics of the language.
Textbook on object-oriented programming in Java. It covers the basics of object-oriented programming, such as classes, objects, and inheritance. This book would be a good choice for students who are new to object-oriented programming.
Beginner's guide to Java. It covers the basics of the language, such as variables, data types, operators, and control flow. This book would be a good choice for students who are new to Java and want to learn the basics of the language.
Beginner's guide to Java. It covers the basics of the language, such as variables, data types, operators, and control flow. This book would be a good choice for students who are new to Java and want to learn the basics of the language.
Beginner's guide to Java. It covers the basics of the language, such as variables, data types, operators, and control flow. This book would be a good choice for students who are new to Java and want to learn the basics of the language.
Beginner's guide to Java. It covers the basics of the language, such as variables, data types, operators, and control flow. This book would be a good choice for students who are new to Java and want to learn the basics of the language.

Share

Help others find this course page by sharing it with your friends and followers:
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser