OOP

Классы

ООП – технология разработки сложного программного обеспечения, в которой программа строится в виде совокупности объектов и их взаимосвязей.

ООП  характеризуется  тремя основными принципами:

  • Инкапсуляция  – объединение в одном объекте данных и методов их обработки.
  • Наследование – создание новых объектов на базе ранее определенных. Новые объекты – потомки – сохраняют свойства своих родителей и обладают специфическими свойствами.
  • Полиморфизм – возможность замещения методов объекта родителя одноименными методами объекта-потомка.

Технология ООП запрещает работать с объектом иначе, чем через методы, то есть внутренняя структура объекта скрыта от внешнего пользователя. В программе для представления объекта используется понятие класса.

Классы

Класс является абстрактным типом данных, определяемым пользователем и представляет собой модель реального объекта  в виде данных и функций для работы с данными. Данные класса  называются полями, а функции, работающие с данными,  методами.

Формат описания класса:

 спецификатор  class имя_класса { тело_класса }

lkass
kl_muutujad
naidis
СпецификаторОписание
newЗадает новое описание класса
publicДоступ к классу не ограничен
protectedДоступ только из данного или производного класса
internalДоступ только из данной программы (сборки)
protected internalДоступ только из данного или производного класса и из данной программы (сборки)
privateДоступ только из элементов класса
staticСтатический класс. Позволяет обращаться к методам класса без создания экземпляра класса
sealedБесплодный класс. Запрещает наследование данного класса
abstractАбстрактный класс. Применяется в иерархии объектов
  • По умолчанию элементы класса считаются закрытыми private.
  • Поля, описанные со спецификатором static, а также константы, существуют в единственном экземпляре для всех объектов класса, поэтому к ним обращаются не через имя экземпляра, а через имя класса.
  • Методы находятся в памяти в единственном экземпляре и используются всеми объектами одного класса совместно.
  • Конструктор экземпляра для статического класса задавать запрещается.

После определения класса мы можем объявлять переменные типа этого класса, называемые объектами.

  Имя_класса имя_объекта = new конструктор;

Для обращения к элементам класса (как к данным, так и к функциям) используют оператор точку.