EdX

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

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

Learn the basics of object-oriented programming and algorithms. 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.

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

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

This course is part of the Introduction to Object-Oriented Programming with Java Professional Certificate.

Syllabus

  • 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
Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Mobile Computing with App Inventor - CS Principles (edX) EdX
Trinity College, Hartford

Mobile Computing with App Inventor - CS Principles (edX)

This course introduces basic principles of computer science by designing and building mobile apps in App Inventor for Android. Learn to use the open development tool, App Inventor, to program on Android devices. You will learn how to design and build mobile apps -- apps that are aware of their location, send and receive text messages, and give advice and directions. The only limit on the types of apps you will learn to build is your own imagination!

No sessions available
5-12 Weeks
Autonomous Mobile Robots (edX) EdX
ETH Zurich,ETHx

Autonomous Mobile Robots (edX)

Basic concepts and algorithms for locomotion, perception, and intelligent navigation. Robots are rapidly evolving from factory workhorses, which are physically bound to their work-cells, to increasingly complex machines capable of performing challenging tasks in our daily environment. The objective of this course is to provide the basic concepts and algorithms required to develop mobile robots that act autonomously in complex environments.

Self Paced
Self-Paced
CS For All: Introduction to Computer Science and Python Programming (edX) EdX
Harvey Mudd College,HarveyMuddX

CS For All: Introduction to Computer Science and Python Programming (edX)

A fun, fast-paced introduction to solving interesting problems with computer science through Python programming. Looking to get started with computer science while learning to program in Python? This computer science course provides an introduction to computer science that’s both challenging and fun.

No sessions available
13-24 Weeks
MATLAB et Octave pour débutants (edX) EdX
École Polytechnique Fédérale de Lausanne,EPFLx

MATLAB et Octave pour débutants (edX)

Premiers pas dans MATLAB et Octave avec un regard vers le calcul scientifique. Commencer à utiliser un logiciel est toujours délicat, on ne sait jamais par où commencer. Dans ce cours nous allons nous concentrer sur la maîtrise d’Octave et MATLAB, de façon à pouvoir par la suite continuer à apprendre de manière indépendante.

Self Paced
Self-Paced
Introduction to Java Programming - Part 1 (edX) EdX
The Hong Kong University of Science and Technology - HKUST,HKUSTx

Introduction to Java Programming - Part 1 (edX)

Learn the fundamental elements of Java programming and data abstraction. Do you want to become a better problem solver? This Java course will provide you with a strong understanding of basic Java programming elements and data abstraction using problem representation and the object-oriented framework.

Self Paced
Self-Paced
Computer Applications of Artificial Intelligence and e-Construction (edX) EdX
Purdue University,PurdueX

Computer Applications of Artificial Intelligence and e-Construction (edX)

Learn the fundamentals of artificial intelligence, machine learning, natural language processing and their applications in e-Construction. This course is the third in a sequence of interrelated courses of the current computer applications in the construction industry. The emphasis of this course is the advanced computational tools including artificial intelligence, machine learning, and natural language processing, and their applications in e-Construction.

Mar 28th 2022
5-12 Weeks
Advanced Algorithmics and Graph Theory with Python (edX) EdX
Institut Mines-Telecom,IMTx

Advanced Algorithmics and Graph Theory with Python (edX)

Strengthen your skills in algorithmics and graph theory, and gain experience in programming in Python along the way. Algorithmics and programming are fundamental skills for engineering students, data scientists and analysts, computer hobbyists or developers. Learning how to program algorithms can be tedious if you aren’t given an opportunity to immediately practice what you learn. In this course, you won't just focus on theory or study a simple catalog of methods, procedures, and concepts. Instead, you’ll be given a challenge wherein you'll be asked to beat an algorithm we’ve written for you by coming up with your own clever solution.

Sep 4th 2023
5-12 Weeks
HTML5 Coding Essentials and Best Practices (edX) EdX
World Wide Web Consortium - W3C,W3Cx

HTML5 Coding Essentials and Best Practices (edX)

Learn how to write Web pages and Web sites by mastering HTML5 coding techniques and best practices. HTML5 is the standard language of the Web, developed by W3C. For application developers and industry, HTML5 represents a set of features that people will be able to rely on for years to come. HTML5 is supported on a wide variety of devices, lowering the cost of creating rich applications to reach users everywhere.

Self Paced
Self-Paced
Applied Quantum Computing III: Algorithm and Software (edX) EdX
Purdue University,PurdueX

Applied Quantum Computing III: Algorithm and Software (edX)

Learn domain-specific quantum algorithms and how to run them on present-day quantum hardware. This course is part III of the series of Quantum computing courses, which covers aspects from fundamentals to present-day hardware platforms to quantum software and programming. The goal of part III is to discuss some of the key domain-specific algorithms that are developed by exploiting the fundamental quantum phenomena (e.g. entanglement)and computing models discussed in part I.

Mar 25th 2024
5-12 Weeks
Introduction to C++ (edX) EdX
Microsoft

Introduction to C++ (edX)

Get a brief introduction to the C++ language from the experts at Microsoft. C++ is a general purpose programming language that supports various computer programming models such as object-oriented programming and generic programming. It was created by Bjarne Stroustrup and, “Its main purpose was to make writing good programs easier and more pleasant for the individual programmer.”*

No sessions available
4 Weeks