The document discusses object-oriented programming concepts like classes, objects, abstraction, encapsulation, inheritance, and polymorphism. It provides examples of modeling a banking application using OOP principles, with classes like BankAccount, SavingsAccount, and CurrentAccount. The key benefits of OOP like reusability and reducing redundant code are highlighted.
3. Overview
Features of OOP
Abstraction
Classes and Objects
Encapsulation
Inheritance
Polymorphism
11/20/2020 Vani Kandhasamy,PSG Tech 3
4. Problem Sheet
1
Suppose you want to automate saving account system of a bank.
Each account, has following information
Account No, Account Holder Name, Balance
Following Bank branch operations
Open an account
Deposit money into a account
Withdraw Money from Account
Transfer money between accounts
Get Account details
Close an account
11/20/2020 Vani Kandhasamy,PSG Tech 4
10. Abstraction
Goal: to handle complexity by hiding unnecessary details from the user
11/20/2020 Vani Kandhasamy,PSG Tech 11
11. Encapsulation
Goal: binding object members and methods together and to keep
them safe from external interference
11/20/2020 Vani Kandhasamy,PSG Tech 12
Encapsulation Data Hiding Abstraction