Какво п редставлява ООП?
Обектно-ориентираното програмиране (ООП) се базира на четири ключови концепции:
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.