Skip to main content

Introduction to Object-Oriented Programming with Java II: Object-Oriented Programming and Algorithms

Learn the basics of object-oriented programming and algorithms.

Introduction to Object-Oriented Programming with Java II: Object-Oriented Programming and Algorithms

There is one session available:

After a course session ends, it will be archived.
Estimated 6 weeks
5–6 hours per week
Self-paced
Progress at your own speed
Free
Optional upgrade available

About this course

Skip About this course

Students will build on the skills learned from “Introduction to Object-Oriented Programming with Java I: Foundations and Syntax Basics” and learn the basics of writing classes that serve as blueprints of concepts or objects that are represented in a programming problem. Students will leverage the concepts of inheritance, interfaces, and polymorphism to program reusability and flexibility in classes. Finally, students will gain experience walking through and analyzing algorithms that are applied on data (including objects) in many object-oriented programs.

At a glance

  • Institution: GTx
  • Subject: Computer Science
  • Level: Introductory
  • Prerequisites:

    Introduction to Java Programming I: Foundations and Syntax Basics

What you'll learn

Skip What you'll learn
  • Learn how to write instantiable classes that serve as blueprints of concepts or objects
  • Learn how to write and implement accessor and mutator methods
  • Learn how to use constructor overloading and chaining
  • Learn how to use method overloading
  • Create subclasses of predefined and custom classes
  • Learn how to override methods, including toString() and equals()
  • Learn how to restrict inheritance and overriding
  • Identify when and how to use an abstract class
  • Understand the need for an interface for a given programming problem
  • Learn how to define an interface
  • Learn how to implement an interface and its abstract methods
  • Apply the Comparable interface on a given class
  • Recognize the need for generic types
  • Describe the steps involved in the selection, insertion, and merge sort algorithms
  • Describe the steps involved in the linear and binary search algorithms
  • Use Big O notation to compare two algorithms based on their runtimes
  • Learn how to write interfaces with constants, default methods, static methods, and inheritance relationships
  • Explore the basics of UML class diagrams
  • Understand how polymorphism is handled at compile time and runtime
  • Writing custom classes
  • Encapsulation and information hiding
  • Introduction to inheritance, including abstract classes
  • Basics of method overloading and overriding
  • Introduction to interfaces and polymorphism
  • UML basics
  • Sorting algorithms: selection, insertion, and merge sort
  • Search algorithms: linear and binary search
  • Basics of complexity and Big O notation

About the instructors

Interested in this course for your business or team?

Train your employees in the most in-demand topics, with edX for Business.