Объект (программирование)
Объект — некоторая сущность в виртуальном пространстве, обладающая определённым состоянием и поведением, имеет заданные значения свойств (атрибутов) и операций над ними (методов)[1]. Как правило, при рассмотрении объектов выделяется то, что объекты принадлежат одному или нескольким классам, которые в свою очередь определяют поведение (являются моделью) объекта. Время с момента создания объекта (конструкция) до его уничтожения (деструкция) называется временем жизни объекта. Объект наряду с понятием «класс», является важным понятием объектно-ориентированного подхода в программировании. Объекты обладают свойствами наследования, инкапсуляции и полиморфизма. [1]
Термин объект в программном обеспечении впервые был введен в языке Simula и применялся для моделирования реальности. Объект обладает состоянием, поведением и идентичностью; структура и поведение схожих объектов определяет общий для них класс; термины "экземпляр класса" и "объект" взаимозаменяемы. [2]
Инстанцирование (англ. instantiation) — создание экземпляра класса. В отличие от слова «создание», применяется не к объекту, а к классу. То есть, говорят «(в виртуальной среде) создать экземпляр класса или инстанцировать класс». Порождающие шаблоны используют полиморфное инстанцирование.
Экземпляр класса (англ. instance) — это описание конкретного объекта в памяти. Класс описывает свойства и методы, которые будут доступны у объекта, построенного по описанию, заложенному в класс. Экземпляры используют для представления (моделирования) конкретных сущностей реального мира. Например объектом может быть ваша стиральная машина, и иметь следующие атрибуты: компания-производитель «Вятка», наименование модели «Вятка-автомат», серийный номер изделия ВЯТ454647, емкость 20 л.
Имя объекта начинается обычно со строчной буквы.
Анонимный объект (англ. anonymous object) — это объект который принадлежит некоторому классу, но не имеет имени.
Инициализация (англ. initialization) — присвоение начальных значений полям объекта.
Практический подход
В большинстве объектно ориентированных языков программирования (таких как Java, C++ или С#), объекты являются экземплярами некоторого заранее описанного класса (однако например в таком языке как JavaScript понятие класс не используется вовсе). Объекты в таких языках создаются с помощью конструктора класса, и уничтожаются либо с помощью деструктора класса (например, в C++), либо автоматически с использованием сборщика мусора (в Java, C#). Объект хранится в виде данных всех его полей и ссылок на таблицу виртуальных методов и RTTI своего класса. Класс определяет набор функций и служебной информации для построения объекта, в том числе необходимый объем памяти для хранения объекта. В языке Питон (эталонной реализацией Питона является интерпретатор CPython) все значения являются объектами, даже классы. В этом языке можно построить класс, экземплярами которого будут классы. Такие классы называются метаклассами.
Пример создания нового объекта и работы с ним в языке программирования Java:
// Создание экземпляра класса ArrayList с именем list
ArrayList list = new ArrayList();
// добавления экземпляра класса Integer в объект list
list.add(new Integer(1));
list.add(new Integer(2));
list.add(new Integer(3));
См. также
Примечания
| Программирование | Это незавершённая статья о программировании. Вы можете помочь проекту, исправив и дополнив её. |
Если вам нравится SbUP.com Сайт, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....