46476

Объектное обобщение

Доклад

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

Организация объектного обобщения: clss С1 { int x y z; public: void D1 { . clss Shpe { public: virtul void In = 0; ввод данных virtul void Out = 0; вывод данных virtul double re = 0; площадь }; Наследование механизм объектноориентированного программирования позволяющий описать новый класс на основе уже существующего родительского при этом свойства и функциональность родительского класса заимствуются новым классом. Наследование: Cинтаксис в языке C Наследование: Синтаксис в языке C clss { clss {...

Русский

2013-11-22

16.81 KB

1 чел.

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

Организация объектного обобщения:

class С1 {

 int x, y, z;

public:

 void D1() { /*...*/ }

 void P1() { /*...*/ }

}

Пример использования объектного обобщения

// Класс, обобщающий все имеющиеся фигуры.

class Shape {

public:

 virtual void In() = 0;  // ввод данных

 virtual void Out() = 0; // вывод данных

 virtual double Area() = 0; // площадь

};

Наследование — механизм объектно-ориентированного программирования, позволяющий описать новый класс на основе уже существующего (родительского), при этом свойства и функциональность родительского класса заимствуются новым классом.

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

Наследование: Cинтаксис в языке C#   Наследование: Синтаксис в языке C++

class A {      class A {

};       };

class B : A {      class B : public A {

};       };

Описание и использование виртуальных функций С++

• Если в предке функция определена как виртуальная, то функция в потомке, с тем же именем и набором параметров, автоматически становится виртуальной

• Виртуальные функции наследуются

• Потомки могут получить доступ к функции предка с помощью операции доступа к области видимости

Чисто виртуальные (абстрактные) функции и классы С++

Содержат признак "= 0" вместо тела: virtual void F() = 0;

Обязательно должны переопределяться в производном классе

Класс, содержащий хотя бы один чисто виртуальный метод, называется абстрактным

class A {

 // ...

public:

 virtual void F() = 0;

};

class B : public A {

 // ...

public:

 virtual void F() {

   wcout << L"Это класс B" << endl;

 }

};

A a;

A* a = new A;

B b;

A* a = new B;

Описание и использование виртуальных функций С#

Синтаксис языка С# по отношению к виртуальным функциям отличается от С++

• Виртуальные функции объявляются при помощи ключевых слов virtual или abstract

• При наличии хотябы одной абстрактной функции необходимо писать abstract перед именем класса

• Виртуальные функции явно переопределяются в потомках с помощью ключевого слова override

• Доступ к виртуальным функциям родительского класса из потомков производится при помощи ключевого слова base

Описание и использование виртуальных функций С#

 abstract class A {

   public abstract void F();

 }

class B : A {

   public override void F() { }

 }

A a = new A();

A a = new B();


 

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

55768. Петриківський розпис. Композиція «Задрімали на калині золоті жар-птиці» 52 KB
  Мета уроку: розширити поняття про види декоративноприкладного мистецтва ознайомити з традиціями і технікою петриківського розпису формувати уміння та навички посильного виконання елементів розпису...
55769. Суспільно – політичне життя й політична боротьба в Україні 1953 – 1964 рр. 444.5 KB
  Обладнання: підручник хрестоматія настінна карта атласи фрагменти відеофільмів Хрущов на XX з’їзді КПРС Усунення М. Основні поняття і терміни: десталінізація реабілітація відлига Програма КПРС. XX з’їзд КПРС; 1957 р. ухвалення нової Програми КПРС; 1963 р.
55770. Утворення давньоруської держави, її значення в історії українського народу 139 KB
  Але ці слабкості були настільки непомітними що неозброєним оком їх не побачиш тому що їх затьмарює відвага войовничість хоробрість простота мудрість і любов до рідної землі; по-друге вся діяльність князя була спрямована на зміцнення...
55771. You are what you eat. Ви є те, що ви їсте 466.5 KB
  Welcome to McDonald’s, dear friends! Nice to meet you here! We’re not going to eat here, but see how they prepare the meals. What are the most popular dishes at McDonald’s? How do we call the lunch box at McDonald’s?
55772. Системи лінійних рівнянь 1.77 MB
  При вивченні цієї теми учні отримують новий потужний апарат розв’язання задач який буде використовуватись і далі. Використання цієї програми дає змогу вчителю значно...
55774. Внеклассное мероприятие по французскому языку 64.5 KB
  Bonjour mesdmes et messieurs Dns un instnt on v commencer Instllezvous dns votre futeil bien gentiment Доброго дня пані та панове За мить ми розпочнемо Розташовуйтесь зручніше ujourd’hui nous nous sommes reunit pour jouer un peu et bien sûr pour svoir qui est plus intelligent prmi les onzièmes clsses. Permettezmoi de vous présenter des équipes : Дозвольте вам представити команди: L’équipe de 11 clsse ___________________ le chef est _______ Команда 11а класу Кістка вишні командир Тімченко Поліна L’équipe de 11B clsse...
55775. Пізнаємо себе 37 KB
  Слайд 1 Ми з вами будемо розмовляти про емоції почуття риси характеру навчимося керувати своїми емоціями. Слайд 2 Зверніть увагу зараз ми з вами знаходимося у дружньому колі ми всі рівні.
55776. Стиснення, архівування та розархівування даних. Програми-архіватори 48 KB
  Мета: Навчальна: сформувати вміння учнів використовувати програми-архіватори для стиснення архівації та розархівації файлів; Розвивальна: розвивати логічне мислення формувати алгоритмічний стиль думки поглибити знання учнів про впорядкування інформації в комп’ютері...