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

Изтрито е съдържание Добавено е съдържание
Пълен член - непълен член
Ред 1:
В контекста на [[ Обектно-ориентирано програмиране | обектно-ориентираното програмиране ]], '''обектът''' се разбира, като съвкупност от елементи и тяхното поведение. Софтуерните обекти моделират обекти от реалния свят или абстрактни концепции. Примери за реални обекти са животни, растения, коли, сгради, езера и т.н. Абстрактните обекти са понятия в някоя предметна област, които се налага да моделираме и използваме в компютърна програма. Примери за абстрактни обекти са структурите от данни [[ Стек | стек]], [[ Опашка (програмиране) |опашка]], [[ Списък (програмиране) |списък ]] и [[ Дърво (програмиране) |дърво]].
 
== Пояснение ==
Ред 34:
Създаването на обекти от предварително дефинирани класове по време на изпълнението на програмата става чрез оператора '''new'''. Новосъздаденият обект обикновено се присвоява на променлива от тип, съвпадащ с класа на обекта. При това присвояване същинският обект не се копира, а в променливата се записва само референция към новосъздадения обект (неговият адрес в паметта). Следва прост пример как става това:
 
Като пример за обект от реалниятреалния свят може да дадем конкретен екземпляр от вида "лъв". Ако дефинираме основни състояния (свойства) на видътвида "лъв" ''възраст'' и ''пол'', а основно поведение (функция) - ''ловуване'' и "вградим" тези състояния и поведения в клас "Лъв", можем да създаваме отделни обекти, които конкретизираме чрез задаване на различни стойности на състоянията и поведението. Т.е. разликата между клас и обект се състои в това, че обектаобектът е конкретен случай (инстанция) на класа. В C# това би изглеждало така:
<source lang="CSharp">
public class Lion
Ред 127:
 
</source>
Ако в нашиятнашия клас ''Lion'' добавим ново свойство ''Name'' и ново поведение (метод) ''LionVoice()'', то можем да зададем име ''Leo'' на обекта ''MyLion'' чрез ''myLion.Name = "Leo";'' и да извикаме новиятновия метод чрез ''Lion.LionVoice();''. Резултатът ще бъде отпечатан на конзолата:
<source lang="html4strict">
The name of my Lion is Leo