Какво п редставлява ООП?
Обектно-ориентираното програмиране (ООП) се базира на четири ключови концепции:
1. Наследяване (Inheritance)
Наследяването позволява на един клас (наричан "подклас") да наследи свойства и методи от друг клас (наричан "базов клас" или "родителски клас"). Това помага за избягване на повторение на код и създаване на йерархии от класове.
Пример:
- Клас
Animal
съдържа общи характеристики и методи катоcolor
,age
,Eat()
иWalk()
. - Клас
Dog
наследяваAnimal
и добавя специфичен методBark()
.
2. Капсулация (Encapsulation)
Капсулацията е процесът на опаковане на данни и методи, работещи с тези данни, в единична единица или клас. Това "скрива" вътрешната структура на обекта от външния свят и предотвратява неочакван достъп или промени във вътрешното състояние на обекта.
Пример:
- Класът
BankAccount
съдържа скрити (енкапсулирани) данни катоbalance
и методи катоdeposit()
иwithdraw()
.
3. Полиморфизъм (Polymorphism)
Полиморфизмът е способността на различни класове да реализират методи с едно и също име по различен начин.
Пример:
- Класовете
Dog
иCat
наследяватAnimal
. Всеки от тях има свой уникален методTalk()
-Dog.Talk()
реализира лаене, докатоCat.Talk()
реализира мяукане.
4. Абстракция (Abstraction)
Абстракцията позволява на програмиста да се фокусира върху "какво" прави обектът, вместо "как" го прави, скривайки сложните детайли от потребителя.
Пример:
- Класът
Vehicle
представлява абстракция на всички видове превозни средства. Методите катоStart()
илиStop()
са общи, но вътрешната имплементация варира според конкретния тип превозно средство катоCar
илиBicycle
.