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

Автор работы: Пользователь скрыл имя, 12 Марта 2014 в 04:50, лекция

Краткое описание

Цель полиморфизма - использование одного имени для задания общих для класса действий. Для изменения метода необходимо перекрыть его в потомке, т.е. объявить в потомке одноименный метод и реализовать в нем нужные действия. В результате объекте-родителе и объекте-потомке будут действовать два одноименных метода, имеющие разную алгоритмическую основу. Концепция полиморфизма - идея «один интерфейс - множество методов». Полиморфизм позволяет манипулировать объектами различной степени сложности путем создания общего для них стандартного интерфейса для реализации похожих действий.
Пример 1. Объявление класса в программе. Постановка задачи
Пример 1. Объявление класса в программе. Программная реализация

Вложенные файлы: 1 файл

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

— 398.50 Кб (Скачать файл)

 

  • type
  •      < имя класса > = class(< имя класса-родителя >)
  •       public
  •             < описание общедоступных элементов >
  •        published
  •             < описание элементов, доступных в Инспекторе Объектов >
  •         protected
  •             < описание элементов, доступных в классах-потомках >
  •         private
  •             < описание элементов, доступных только в модуле >
  • end;

 

21

Пример описания класса

 

TControl = class(TComponent)

  private

FOnDblClick: TNotifyEvent;

FOnHouseDown: TMouseEvent;

FOnHouseHove:  TMouseMoveEvent;

protected

property OnDblClick: TNotifyEvent read FOnDblClick write FOnDblClick;

property OnMouseDown: TMouseEvent read FOnMouseDown write FOnMouseDown;

property OnMouseMove: TMouseMoveEvent read FOnMouseMove write FOnMouseMove;

end;

 

22

Пример описания класса

 

type

TStudent = class

FAge  :  integer;

function GetAge  :  integer;

procedure SetAge(Value  :  integer);

property Age  :  integer read GetAge write SetAge;

end;

 

23

Пример 1. Объявление класса в программе. Постановка задачи 

 

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

  • Будем хранить о человеке следующие данные:

фио, рост в cм, вес в кг.

  • Для работы с этими данными предусмотрим следующие методы:
    • методы инициализации полей (названия таких методов имеют префикс Set); назначение этих методов - присваивать новые значения полям класса; новые значения полей будут предаваться через параметры функций-методов;
    • метод, позволяющий получить информацию о текущем состоянии объекта (значении всех его полей).

 

 

24

Пример 1. Объявление класса в программе. Программная реализация

 

#include <stdio.h>

#include <string.h>

//описание структуры класса

class TPerson

{

 private:

      char fname[15];

      int frost;

      float fwes;

 public:

  char *    Show() ;

  void SetName (char* value);

  void SetRost  (int  value);

  void SetWes  (float  value);

}  ;

 

25

Пример 1. Объявление класса в программе. Реализация методов класса

 

//реализация методов класса

char* TPerson::Show()

   {static char S[100];

      sprintf (S,"Это %s; его рост - %d см, вес - %3.2f кг",  fname,  frost,  fwes);

    return S;  }

void TPerson::SetName(char* value)

    { strcpy(fname,value);

     return;    }

void TPerson::SetRost(int value)

    { frost=value;

     return;    }

void TPerson::SetWes(float value)

    { fwes=value;

     return;    }

 

 

26

 

4


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