46259

Парадигма ООП. Классы и объекты. Области видимости. Конструкторы. Деструкторы

Доклад

Информатика, кибернетика и программирование

Наследование позволяет создавать иерархию объектов, в которой объекты-потомки наследуют все свойства своих предков. Свойства при наследовании повторно не описываются. Кроме унаследованных, потомок обладает собственными свойствами

Русский

2013-11-20

13.32 KB

3 чел.

4. Парадигма ООП. Классы и объекты. Области видимости. Конструкторы. Деструкторы.

Объектно-ориентированная парадигма программирования

• Инкапсуляция - скрытие деталей реализации, объединение данных и действий над ними

• Наследование позволяет создавать иерархию объектов, в которой объекты-потомки наследуют все свойства своих предков. Свойства при наследовании повторно не описываются. Кроме унаследованных, потомок обладает  собственными свойствами

• Полиморфизм -  возможность  определения единого по имени действия, применимого ко всем объектам иерархии, причем каждый объект  реализует это действие собственным способом

Термины класс и объект часто взаимозаменяемы, но в действительности классы описывают типы объектов, а объекты — это используемые экземпляры классов. Поэтому процесс создания объекта называется созданием экземпляра. Если использовать сравнение с чертежом, то класс является чертежом, а объект является зданием, построенным по нему.

class SampleClass

{

}

Области видимости 

class имя

{

private:

   описание скрытых элементов

public:

   описание доступных элементов

};

• public – область открытых полей класса

• private – область закрытых полей класса

• protected – закрыта для пользователя, открыта для наследников

Конструкторы

• Конструктор не возвращает значение, даже void. Нельзя получить указатель на конструктор.

• Класс может иметь несколько конструкторов с разными параметрами для разных видов инициализации (при

этом используется механизм перегрузки).

• Конструктор, вызываемый без параметров, называется конструктором по умолчанию.

• Параметры конструктора могут иметь любой тип, кроме этого же класса. Можно задавать значения параметров

по умолчанию. Их может содержать только один из конструкторов.

• Если программист не указал ни одного конструктора, компилятор создает его автоматически. Такой конструктор

вызывает конструкторы по умолчанию для полей класса и конструкторы по умолчанию базовых классов.

• Конструкторы не наследуются.

• Конструкторы нельзя описывать как const, virtual и static

// constructors.cpp

// compile with: /c

class MyClass {

public:

  MyClass(){}

  MyClass(int i) : m_i(i) {}

private:

  int m_i;

};

Деструкторы

• Деструктор вызывается автоматически, когда объект уничтожается

• Всегда начинается с символа тильда (~)

~Monster() {

delete [] name;

}

• Не имеет аргументов и возвращаемого значения

• Не может быть объявлен как const или static

• Может быть виртуальным


 

А также другие работы, которые могут Вас заинтересовать

62497. Оплата труда 35.17 KB
  Формы и системы оплаты труда порядок выплаты ограничение удержаний. Оплата труда различных категорий работников в особых условиях и при других отклонениях от нормальных условий труда. 1 Оплата труда: основные понятия гарантии формы.
62501. Щоденні слова та вираження. Everyday words and expressions 22.46 KB
  Types of hotel accommodation: a single room - for one person with a single bed; a double room - for two people with one large double bed; a twin room - for two people with two single beds; full board - includes breakfast, lunch and dinner...
62503. Древнерусская культура (устный журнал) 23.44 KB
  Что такое культура высказывания детей Что мы на уроке должны узнать Что значит духовная культура Объясните что значит материальная культура Чем отличается духовная культура от материальной...