Енкапсулация (програмиране): Разлика между версии

Изтрито е съдържание Добавено е съдържание
Редакция без резюме
м неправилно членуване - предлог и пълен член
Ред 144:
 
== Обща дефиниция ==
Като цяло, енкапсулирането е''' един от четирите основи на''' ООП ([[Обектно-ориентирано програмиране|обектно ориентирано програмиране]]). Енкапсулиране означава обединяване на данни с методи, които работят върху данните.<ref>{{Цитат уеб|last=Rodgers|first=Wm. Paul|title=Encapsulation is not information hiding|url=http://www.javaworld.com/article/2075271/core-java/encapsulation-is-not-information-hiding.html|publisher=JavaWorld|accessdate=15 март 2014}}</ref> Енкапсулацията '''се използва за скриване на стойността или състоянието на структурирани данни на обекта вътре в класа''', чрез предотвратяване на неоторизираниятнеоторизирания директен достъп до него. Публично достъпните методи обикновено се предоставят от класа (така наречените ''[[гетър(getter)|гетъри(getter)]]'' и ''[[сетър(setter)|сетъри(setter)]]'') за да се достъпват стойностите, и за да могат други използващи класове да достъпват тези методи за извличане и промяна на стойностите на обекта.
 
Този механизъм не е уникален за обектно-ориентираното програмиране. [[Имплементация]]та на абстрактни типове данни, например, [[Модул (софтуер)|модули]], предлагат подобна форма енкапсулация. Това сходство се дължи на факта, че двете понятия се основават на една и съща математическа основа – [[типизация на данните]].<ref>Pierce (2002), Section 24.2 „Data Abstraction with Existentials“</ref>