Skip to main content

CS101: Introduction to Computer Science I

Page path
  • Home /
  • Courses /
  • Course Catalog /
  • Computer Science /
  • CS101: Introduction to Computer Science I /
  • Unit 2: Object-Oriented Programming /
  • 2.2: Fundamental Concepts of OO Programming
Back to 'Unit 2: Object-Oriented Programming'
  • 2.2: Fundamental Concepts of OO Programming

      • 2.2.1: Classes vs. Objects

        • John DeNero's "Composing Programs: Object-Oriented Programming"

          Read this section, which explains objects and classes in Python.

        • David J. Eck's "Introduction to Programming Using Java: Objects and Object-Oriented Programming"

          Please read this section. This section explains fundamentals of object oriented programming. As you read, focus on the following concepts:

          • Classes vs. objects
          • Inheritance
          • Encapsulation
          • Polymorphism

      • 2.2.2: Encapsulation

        Encapsulation is to put both data, and operations that can be performed on this data, in a single class. The advantages of encapsulation include information hiding, which means the user does not need to know the implementation details of the internal design, but is still be able to access and modify the data through public operations provided.

        • 2.2.3: Inheritance

          Inheritance is to reuse the existing classes when creating a new class. The derived class will inherit public operations defined in the base class. It usually involves a hierarchy of related entities.

          • 2.2.4: Polymorphism

            • Michelle Yaiser's "Object-Oriented Programming Concepts: Polymorphism and Interfaces"

              Read this article, which explains the concept of polymorphism, a critical concept for OO programming.

          • 2.2.5: Decoupling

            •  "Decoupling" URL

              Please read this article.

        Navigation

        Art History
        Biology
        Business Administration
        Chemistry
        Communication
        Economics
        English
        History
        Mathematics

        Creative Commons License
        © Saylor Academy 2010-2018 except as otherwise noted. Excluding course final exams, content authored by Saylor Academy is available under a Creative Commons Attribution 3.0 Unported license. Third-party materials are the copyright of their respective owners and shared under various licenses. See www.saylor.org/open/licensinginformation for detailed licensing information.

        Saylor Academy and Saylor.org® are trade names of the Constitution Foundation, a 501(c)(3) organization through which our educational activities are conducted.

        Terms of Use | Privacy Policy