Обект (програмиране): Разлика между версии

Изтрито е съдържание Добавено е съдържание
м whitespaces
м whitespaces
Ред 1:
В контекста на [[Обектно-ориентирано програмиране|обектно-ориентираното програмиране]], '''обектът''' се разбира като съвкупност от елементи и тяхното поведение. Софтуерните обекти моделират обекти от реалния свят или абстрактни концепции. Примери за реални обекти са животни, растения, коли, сгради, езера и т.н. Абстрактните обекти са понятия в някоя предметна област, които се налага да моделираме и използваме в компютърна програма. Примери за абстрактни обекти са структурите от данни [[Стек (структура от данни)|стек]], [[Опашка (програмиране)|опашка]], [[Списък (програмиране)|списък ]] и [[Дърво (структура от данни)|дърво]].
 
== Пояснение ==
Ред 22:
 
* '''Член-данни''' (data members) – представляват променливи, вградени в обектите, които описват състоянията им.
* '''[[Метод (програмиране)|Методи]]''' (methods) – те са инструментът за изграждане на поведението на обектите. Обект, в [[C Sharp|C # ]], е пример за клас, който се създава динамично. Обект е също ключова дума, която е псевдоним на предварително определения тип System.Object в[[Microsoft .NET Framework|. NET Framework ]].
 
Обектът се състои от членове инстанция, чиято стойност го прави уникален по подобен набор от обекти.
Ред 28:
Когато обектът е инстанция, той се разпределя с блок на паметта и конфигуриран според план, предоставени от този клас, в основата на обекта. Обекти на стойност тип се съхраняват в стека, а тези на референтен тип се разпределят на куп.
 
Концепцията на „обекта“ и обектно-ориентиран подход за програмиране са въведени от [[Списък на езици за програмиране|езика за програмиране ]] „Simula“, издаден през 1967 г.
 
В обектно-ориентираният подход, данните в даден „обект“ трябва да бъдат достъпни единствено чрез своите „[[Метод (програмиране)|методи ]] / функции“ (подпрограми). Това правило прави лесно редактирането на код и гарантира, че данните винаги ще са лесно и бързо достъпни. Синтактично в почти всички обектно-ориентирани езици за програмиране, оператор точка (.) и оператор (поставен между името на обекта и името на полето) се използват, за да се достъпи определен „полетата“ на един „обект“.
 
== Създаване и освобождаване на обекти в [[:bg:C_Sharp|C#]] ==
Ред 73:
</source>
[[File:Scheme.jpg|дясно|Създаване на обект]]
На [[Променлива (програмиране)|променливата ]] '''myLion''' от тип '''Lion''' присвояваме новосъздадена инстанция на класа '''Lion'''.<br> Променливата '''myLion''' стои в [[Стек (структура от данни)|стека ]], а нейната стойност (конкретната инстанция на класа '''Lion''')<br> стои в динамичната памет (managed heap). (''вж схемата'')
 
При създаването на обект с оператора '''new''' се заделя памет и се извършва начална инициализация на данните му. За да стане това се използва специален метод на класа, наречен конструктор.