---
title: "Object oriented system and core concepts"
subject: "Object Oriented Analysis and Design"
chapter: 1
key: "semester_6/object_oriented_analysis_and_design:oo-system-concepts-explained"
source: https://www.bctengineer.com/q/semester_6/object_oriented_analysis_and_design/oo-system-concepts-explained
site: BCT Engineering
---

# Object oriented system and core concepts

Object Oriented Analysis and Design · Chapter 1: Object Oriented Fundamentals

- Asked in: 2069 Poush, 8 marks
- Video: [Fundamental Concepts of Object Oriented Programming](https://www.youtube.com/watch?v=m_MQYyJpIjg) — Computer Science Lessons
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_6/object_oriented_analysis_and_design/oo-system-concepts-explained
- Whole chapter: https://www.bctengineer.com/md/semester_6/object_oriented_analysis_and_design/chapter-1

## Question

Explain object oriented system with reference to class, object, encapsulation, abstraction, message, inheritance, interface and polymorphism with suitable examples.

## Short answer

An object-oriented system is a collection of interacting objects that combine data and behavior. Classes serve as blueprints; objects are instances. Encapsulation hides data, abstraction exposes only essential features. Objects communicate via messages. Inheritance creates "is-a" hierarchies, interfaces define operation signatures, and polymorphism lets a message behave differently per object.

## Answer

An **object-oriented system** is a system built as a collection of interacting **objects**. Each object has data and behaviour, and objects cooperate by sending messages to each other, instead of one program calling functions on shared data.

#### Class
A class is a blueprint or template that defines the attributes and operations common to a set of objects. Example: `Student` with attributes `name`, `roll` and operations `register()`, `getResult()`.

#### Object
An instance of a class with its own identity, state and behaviour. Example: `s1 = Student("Ram", 101)`.

#### Encapsulation
Binding data and methods together and hiding the internal data using access control (`private`). Example: `balance` of an account is private and changed only by `deposit()`/`withdraw()`.

#### Abstraction
Showing only essential features and hiding the details. Example: a `Car` user uses `start()` and `accelerate()` without knowing the engine internals.

#### Message
A request sent to an object to invoke one of its operations. Example: `account.withdraw(500)` sends the message `withdraw` with argument 500 to the object `account`.

#### Inheritance
A subclass acquires attributes and methods of a superclass, giving reuse and an "is-a" hierarchy. Example: `Student` and `Teacher` inherit `name` and `address` from `Person`.

#### Interface
A named set of operation signatures without implementation, which a class promises to provide. Example: interface `Printable { print(); }` is implemented by `Report` and `Invoice`.

#### Polymorphism
The same message gives different behaviour depending on the object receiving it. Example: `shape.draw()` draws a circle for `Circle` and a rectangle for `Rectangle`.

```text
         +---------+
         | Person  |
         +---------+
           ^     ^
           |     |
    +---------+ +---------+
    | Student | | Teacher |
    +---------+ +---------+
  s1:Student --- message: getResult() ---> object
```

Together these concepts make the system modular, reusable, easy to change and close to the real-world problem.

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. What is the relationship between a class and an object?
   A. A class is an instance of an object
   B. A class is a blueprint, and an object is an instance with its own identity, state and behaviour
   C. They are two names for the same thing
   D. An object is a template for many classes
   Answer: B. A class defines common attributes and operations; objects are instances created from it. (Key point: Class vs object)

2. What does account.withdraw(500) represent in an OO system?
   A. Inheritance of withdraw from a superclass
   B. A message sent to the object account requesting its withdraw operation
   C. Creation of a new class
   D. Declaration of an interface
   Answer: B. A message is a request to an object to invoke one of its operations. (Key point: Message)

3. What does polymorphism mean in shape.draw()?
   A. Circle and Rectangle share one copy of the data
   B. The same message gives different behaviour depending on the receiving object's class
   C. A subclass acquires attributes of a superclass
   D. The data of shape is private
   Answer: B. draw() draws a circle for Circle and a rectangle for Rectangle. (Key point: Polymorphism)

4. Which pair is described correctly?
   A. Inheritance gives an 'is-a' hierarchy and reuse; an interface is a set of operation signatures without implementation that a class promises to provide
   B. Inheritance has no implementation; interface reuses code
   C. Interface hides data; inheritance sends messages
   D. Both mean binding data with methods
   Answer: A. Student inherits from Person (is-a), while Printable is implemented by Report and Invoice. (Key point: Inheritance vs interface)

## Related in Object Oriented Analysis and Design

- [Encapsulation and abstraction working together](https://www.bctengineer.com/question.md?key=semester_6%2Fobject_oriented_analysis_and_design%3Aencapsulation-abstraction-together) — Object Oriented Analysis and Design, chapter 1
- [Algorithmic vs object-oriented decomposition](https://www.bctengineer.com/question.md?key=semester_6%2Fobject_oriented_analysis_and_design%3Aalgorithmic-vs-oo-decomposition) — Object Oriented Analysis and Design, chapter 1
- [Event management system summary and class diagram](https://www.bctengineer.com/question.md?key=semester_6%2Fobject_oriented_analysis_and_design%3Aoems-executive-summary-class-diagram) — Object Oriented Analysis and Design, chapter 2
- [Interface vs implementation](https://www.bctengineer.com/question.md?key=semester_6%2Fobject_oriented_analysis_and_design%3Ainterface-vs-implementation) — Object Oriented Analysis and Design, chapter 4, asked 2×
- [Video rental shop class diagram](https://www.bctengineer.com/question.md?key=semester_6%2Fobject_oriented_analysis_and_design%3Avideo-rental-class-diagram) — Object Oriented Analysis and Design, chapter 2
- [Point of sale class diagram](https://www.bctengineer.com/question.md?key=semester_6%2Fobject_oriented_analysis_and_design%3Apos-class-diagram-multiplicity) — Object Oriented Analysis and Design, chapter 2

## Related in other subjects

- [Data abstraction versus encapsulation](https://www.bctengineer.com/question.md?key=semester_3%2Fobject_oriented_programming%3Adata-abstraction-encapsulation) — Object Oriented Programming, chapter 1
- [Friend class and encapsulation](https://www.bctengineer.com/question.md?key=semester_3%2Fobject_oriented_programming%3Afriend-class-encapsulation) — Object Oriented Programming, chapter 4
- [Compare procedural and object oriented programming](https://www.bctengineer.com/question.md?key=semester_3%2Fobject_oriented_programming%3Aprocedural-vs-oop-compare) — Object Oriented Programming, chapter 1
- [OS abstraction, extended machine, system call](https://www.bctengineer.com/question.md?key=semester_6%2Foperating_system%3Aos-abstraction-system-call) — Operating System, chapter 1
