Chapter 12: Support for Object-Oriented Programming

0.0(0)
studied byStudied by 0 people
0.0(0)
linked notesView linked note
full-widthCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/23

flashcard set

Earn XP

Description and Tags

These flashcards cover the key concepts, definitions, and mechanisms related to Object-Oriented Programming as outlined in Chapter 12 of Robert W. Sebesta's book.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No study sessions yet.

24 Terms

1
New cards

Object-Oriented Programming (OOP)

A programming paradigm based on the concept of objects, which can contain data and code to manipulate that data.

2
New cards

Inheritance

A mechanism in OOP that allows one class to inherit the properties and behaviors (methods) of another class.

3
New cards

Polymorphism

The ability of different classes to be treated as instances of the same class through a common interface.

4
New cards

Abstract Data Types (ADTs)

Data types defined by their behavior (semantics) from the point of view of a user, rather than by their implementation.

5
New cards

Dynamic Binding

A programming mechanism that resolves method calls at runtime rather than at compile time, allowing for flexible method resolution.

6
New cards

Subclass

A derived class that inherits properties and methods from a parent class.

7
New cards

Superclass

The parent class from which properties and methods are inherited by a subclass.

8
New cards

Message Protocol

The entire collection of methods an object can respond to, composed of method names and the associated destination object.

9
New cards

Encapsulation

The bundling of data and the methods that operate on that data, restricting direct access to some of an object's components.

10
New cards

Access Control

Mechanisms that restrict access to certain entities within a class, categorized as public, private, or protected.

11
New cards

Reflection

A feature that allows a program to inspect and modify its own structure and behavior at runtime.

12
New cards

Single Inheritance

A class inheritance approach where a class can inherit from only one parent class.

13
New cards

Multiple Inheritance

A class inheritance model where a class can inherit from more than one parent class.

14
New cards

Inner Class

A class defined within the scope of another class, which can access the members of the outer class.

15
New cards

Message Sending

The process of invoking a method on an object in OOP, allowing an object to communicate with another object.

16
New cards

Instance Variable

A variable defined in a class for which each object of the class has its own copy.

17
New cards

Class Variable

A variable that is shared among all instances of a class.

18
New cards

Abstract Class

A class that cannot be instantiated on its own and is meant to be subclassed.

19
New cards

Constructor

A special method that is called when an object is instantiated, often used to initialize variables.

20
New cards

Destructor

A special method that is called when an object is destroyed, used to free resources or perform cleanup.

21
New cards

Heap-Dynamic Allocation

Memory allocation for objects at runtime that allows objects to be created and destroyed as needed.

22
New cards

Stack-Dynamic Allocation

Memory allocation for objects that are created on the stack, automatically deallocated when out of scope.

23
New cards

Method Overriding

The ability of a subclass to provide a specific implementation of a method that is already defined in its parent class.

24
New cards

Virtual Method

A method in a base class that can be overridden in derived classes and is bound at runtime.