TOPREFERAT.COM.KZ - Қазақша рефераттар

войти на сайт

вход на сайт

Логин: :
Пароль :

Забыл пароль Регистрация

Кластар иерархиясы, мұрагерлік, полиморфизм курстық жұмыс




Кластар иерархиясы, мұрагерлік, полиморфизм курстық жұмыс
0
Раздел: Соңғы қосылған | Автор: Админ | Дата: 13-03-2015, 12:06
Загрузок: 3423


Мазмұны

І.Кіріспе.........................3

ІІ. Негізгі бөлім

1.1.Кластар иерархиясы.............................4

1.2. Кластар және Delphi – дің обектілері.....................7

2.1.Мұрагерлік.........................7

2.2.Полиморфизм.................. 10

3.Кластарды хабарлау...............................19

ІІІ.Қорытынды.............24

Пайдаланған әдебиеттер...........................25



Жұмыс түрі: Курстық жұмыс
Жұмыс көлемі: 24 бет
Пәні: Соңғы қосылған курстық жұмыстар

-----------------------------------------------------------------------------------

КУРСТЫҚ ЖҰМЫСТЫҢ ҚЫСҚАРТЫЛҒАН МӘТІНІ
Мазмұны

І.Кіріспе.........................3

ІІ. Негізгі бөлім

1.1.Кластар иерархиясы.............................4

1.2. Кластар және Delphi – дің обектілері.....................7

2.1.Мұрагерлік.........................7

2.2.Полиморфизм.................. 10

3.Кластарды хабарлау...............................19

ІІІ.Қорытынды.............24

Пайдаланған әдебиеттер...........................25

Кіріспе

Программалау технологияларының негізгі бағыттарының бірі – обьектіге бағытталған бағдарламалау
Бұл тәжірибе алудың мақсаты студенттердің информатика, программалау технологиялары, компьютерлік
Жалпы обьектіге бағытталған бағдарламалау тәсілдерінің ерекшелігі, алдын ала құрылып
1.1 Кластар иерархиясы

Object Pascal тіліндегі кластар деп өрістен, әдістен және қасиеттерден
Type

TmyClass=class(TObject)

Field:integer;



End;

Var

MyClass:TmyClass;

Begin



MyClass^.Fied:=0; // Қате! Ол былай жазылуы тиіс:

MyClass.Fied:=0;



End.

Туынды класс бір базалық кластан артық класқа мұра ете
Object Pascal құрамындағы барлық кластар TObject класының ең түпкі
Негізінде Delphi – де қолданылатын кластар мен компоненттің түрлері
1- сурет. VCL иерархиялық база класы.

VCL кітапханасында кластар жай мұрагерлік механизмінің класы ретінде қолданылады.
2- сурет. VCL – кітапханасындағы иерархиялық класс.

TObject класы VCL кітапханадағы барлық обьектінің сызбаларын инкапсуляциялайды. Егерде
Жаңа кластың жариялануы Type секциясында орындалады.

TPersistent класы өзінің Tobject ата – анасының мүмкіндіктерін кеңейтеді:
TComponent класы өз кезегіндегі, класты құраушының ортасымен әрекеттесіп, оны
TControl класы файлдармен және класты құраушының ортасымен ғана жұмыс
Ал оның ұрпағы TWinControl Windows терезелерін де құра алады
Ішкі орналасуындағы айырмашылыққа қарамастан қысқа ShortString және ұзын String
Обьектінің бетіне Canvas қасиеті сәйкес келеді. Обьектінің бетіне графикалық
1. Кластар және Delphi-дің обьектілері

Интерфейс орындалуына Delphi-дің кластар кітапханасы қолданылады, соның ішінде әртүрлі
Жобалау кезінде Delphi қосымшасының фоормалары программаның мәтініне қажетті обьектілерді
Type

TForm1=class(TForm)

Private

{Private declarations}

Public

{Public declarations}

End;

Var

Form1:TForm1

Кластар – бұл күрделі программаларды жеңілдету және оның сапасын
2.1 Мұрагерлік

Объекті бағдарланған программалауда екінші «діңгек» болып мұрагерлік саналады. Бұл
Мұрагерлік – обьектіге бағытталған бағдарламалаудың басты механизмдерінің бірі. Оның
Мұрагерлік дегеніміз – программалық жабдықтауда негізгі кластан туынды класты
Негізгі кластан туынды класс, ал туынды кластан жаңа туынды
пайда болады. Туынды кластан негізгі кластың жабық элементтеріне рұқсат
Жаңа класты жобалай отырып алдын ала оның обьектілері қандай
Түрлі класс обьектілері мен кластардың өздері алдын ала құрастырған
Кез келген класс басқа кластан туындайды. Ол үшін оны
TchildClass=Class(TParentClass)

Туындаған кластан автоматты түрде өзінің ата – анасының өрісі,
TObject Pascal – дың барлық кластары жалғыз ата –
TaClass=Class(Tobject)

TаClass=Class

Мұрагерлік принципі TОbject класынан оның ұрпақтарына қарай дами отырып,
Обьектіге бағытталған бағдарламаның мұрагерлік қасиеті бұрыннан анықталған кластарға жаңа
Туындысын жариялағанда алғы буынның атын міндетті түрде көрсету қажет.
3 - суретте Delphi – дегі кластар тармағы келтірілген.
3 – сурет. Delphi – дегі кластар тармағы

2.2 Полиморфизм

Полиморфизм – бұл бір атты екі немесе одан да
Полиморфизм – бұл мағынасы ұқсас мәселелерді әртүрлі тәсілмен шешетін
Object Pascal тілінде полиморфизм тек жоғарыда сипатталған мұрагерлік механизмі
Полиморфизм концепциясы әр әдістің обьектіге және сол уақытта әдістің
Сонымен қатар, полиморфизм операторларға да қолданылады. Барлық программалау тілдерінде
Полиморфизмнің қолдануына ең жақсы мысал ретінде Delphi ортасын қолданамыз.
Полиморфизм - әртүрлі кластарға жататын әдістерге бір атауды қолдану
Үш класс анықталсын дейік, оның біреуі екеуіне негізгі болады.

Type

// негізгі класс

TPerson = class

Fname:string; // аты

Constructor Create(name:string);

Function info:string; virtual;

End;

TStud = Class(TPerson)

Fgr:integer; // группа номері

Constructor Create(name:string; gr:integer);

Function info:string; override;

End;

TProf = class(TPerson)

Fdep:integer; // кафедра атауы

Constructor Create(name:string; dep:string);

Function info:string; override;

End;

Әрбір осы кластың info әдісі анықталған. Негізгі класта virtual
Жарнама әдісі кішігірім класқа виртуалдық әдісті өзінің жеке меншігіне
Әрбір кішігірім кластың өзінің info әдісі анықталған.

Function TPerson.info:string;

Begin

Result:=’’;

End;

Function TPerson.info:string;

Begin

Result:fname + ‘гр.’+inttostr(fgr);

End;

Function TPerson.info:string;

Begin

Result:fname + ‘каф.’+fdep;

End;

Сол сияқты екі класта негізгіден шыққандықтан, мұғалімдер мен студенттердің
List:array[1..SZL] of TPerson;

Тізімді мынандай тәсілмен хабарлауға болады, себебі оған Object
Массив элементтері арқылы студенттер мен мұғалімдердің тізімін шығару info
St:=’’;

For i:=1 to SZL do //
If list[i] NIL

Then st:=st+list[i]. info+#13;

ShowMessage(st);

Программаның жұмыс істеу барысында әрбір массив элементі TStud және
Келесі программа жоғарыда көрсетілген кластардың TPerson, TStud және Tprof
4 - сурет. Полиморфизм программасының сұхбат терезесі.

Unit polimor_;

Interfase

Uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

Type

TForm1 = class(TForm)

Edit1:TEdit;

Edit2:Edit;

GrupBox1:TGrupBox;

Radiobutton1:TRadiobutton;

Radiobutton2:TRadiobutton;

Label1:TLabel;

Label2:TLabel;

Button1:TButton;

Button2:TButton;

Procedure Button1Click(Sender:TObject);

Procedure Button2Click(Sender:TObject);

Private

{Private declarations}

Public

{Public declarations}

End;

Type

// негізгі класс

TPerson = class

Fname:=string; // аты

Constructor Create(name:string);

Function info:string; virtual;

End;

// студент класы

TStud = class(TPerson)

fGr:integer; // гриппа номірі

constructor Create(name:string; gr:integer);

function info:string; override;

end;

// мұғалім класы

TProf = class(TPerson)

Fdep:string; // кафедра атауы

Constructor Create(name:string; dep:integer);

Function info:string; override;

End;

Const

SZL = 10; // тізім өлшемі

Var

Form1:TForm1;

List:array[1..SZL] of TPerson; // тізім

n:integer = 0;

implementation

{$R * DFM}

Constructor TPerson.Create(name:string);

Begin

Fname:=name;

End;

Constructor TStud.Create(name:string; gr:integer);

Begin

Inherited Create(name); // негізгі кластың конструкторын шақыру

fGr:=gr;

end;

Constructor TStud.Create(name:string; dep:integer);

Begin

Inherited Create(name); // негізгі кластың конструкторын шақыру

fDep:=dep;

end;

function TPerson.Info:string;

begin

result:=fname + ‘гр.’ +inttostr(fGr);

end;

function TPerson.Info:string;

begin

result:=fname + ‘каф.’ +inttostr(dep);

end;

// Қосу батырмасын шерту

Procedure TForm1.Button1Click(Sender:TObject);

Begin

If nBegin

// тізімге обьектті қосу

N:=n+1;

If Radiobutton1.Chesced

Then // TStud обьектін құру

List[n]:=TStud.Create(edit1.text,strtoint(edit1.text));

Else // TProf обьектін құру

List[n]:=TProf.Create(edit1.text,edit2.text));

// кірістіру алаңын тазарту

Edit1.text:=’’;

Edit2.text:=’’;

Edit1.SetFocus; //

End;

Else Showmessage(‘тізім толықтырылды!’);

End;

Procedure TForm1.Button2Click(Sender:TObject);

Var

I:integer; // индекс

St:string; // тізім

Begin

For i:=1 to SZL do

If list[i]NIL then st:=st+list[i].info+#13;

ShowMessage(‘тізім’+#13+st);

End;

End.

TForm1.Button1Click процедурасы Қосу(Button1) кнопкасын басу арқылы жіберіліп, list[n] TStud
TForm1.Button2Click процедурасы Тізімі (Button2) ) кнопкасын басу арқылы жіберіледі.
Property IntegerValue:Integer read IntField write SetField;

End;

Егер қасиет тек оқу немесе жазу үшін ғана қажет
Шыныда да, ол қасиеттің өзінің типіндей мәліметтерден қандай да
3. Кластарды хабарлау

Жаңадан құрылатын кез келген класс төмендегідей қызметші сөздермен анықталатын
Секциялар класты сипаттау элементтерінің көрінетін бөлігін анықтайды. Public секциясы
Published секциясы тек стандартты емес компоненттерді жасауда пайдаланылады. Delphi
Private секциясы көріну бөлігін ең төменгі бөлігіне дейін кішірейтеді:

Жабық элементтердің сипатталуы осы кластың ішіндегі, яғни класс сипатталған
Private секциясында хабарланған элемент, егер ол басқа модульде орналасқан
Automated секциясы OLE обьектілерін автоматтандыру интерфейсінде қосылатын қасиеттер мен
Object Pascal тілінде кез келген секцияны бірнеше рет, яғни
Unit Unit1;

Uses Controls, Forms;

Type

TForm1 = class(TForm)

Button1:TButton;

Private

FintField:integer;

Procedure SetValue(Value:integer);

Function GetValue:integer

Published

Property IntField:read GetValue write SetValue

Protected

Procedure proc1;

Public

Procedure proc2;

End;

Var

Form1:TForm1;

Implementation

Procedure TForm1.Proc1;

Button1.Color:=clBtnFace;

FIntField:=0;

IntField:=0;

Proc1;

Proc2;

End;

Begin

Form1.Button1.Color:=clBtnFace;

Form1.FlintField:=0;

Form1.IntField:=0;

Form1.Proc1; // Бұл жазу қате!

Form1.Proc2;

End;

Unit Unit2;

Interface

Uses Controls, Unit1;

Type

TForm2 = class(TForm1)

Button2:TButton;

Procedure Button2Click(Sender:TObject);

End;

Var

Form2:TForm2;

Implementation

Procedure TForm2.Button2Click(Sender:TObject);

Begin

Form1.Button1.Сolor:=clBtnFace;

Form1.FlintField:=0; // Бұл жазу қате!

Form1.IntField:=0;

Proc1;

Proc2;

End;

Begin

Form1.Button1.Color:=clBtnFace;

Form1.FlintField:=0; // Бұл жазу қате!
Form1.IntField:=0;

Form1.Proc1; // Бұл жазу қате!

Form1.Proc2;

End;

Класс – ұрпақты хабарлауда класс элементтерінен бір бөлігінен басқа
Type

TForm2 = class(TForm2)

………..

Public

Procedure Proc1;

………..

End;

Осындай хабарлаудан кейін Unit2 модулін былай шақыруға болады:

Form2.Proc1;

Private секциясына алмастыру жасағаннан кейін хабарлау элементі ұрпақтарына көрінбейді(егер
Класс модульдің тек интерфейстік бөлігінде немесе жүзеге асырудың бастапқы
Қорытынды

Оқып – танысып тәжірибе алу – болашақ мамандықтарды оқыту,
Тәжірибе алу барысында студенттер Delphi программалау ортасымен, MathCad пен
Кластар – бұл күрделі программаларды жеңілдету және оның сапасын
Полиморфизм концепциясы әр әдістің обьектіге және сол уақытта әдістің
Мұрагерлік - обьектіге бағытталған бағдарламалаудың басты механизмдерінің бірі. Оның
Жалпы, қазіргі уақытта Delphi, MathCad, Maple туралы алған білімдердің
Пайдаланылған әдебиеттер

http://www.delphi king dom.com. delphi hall.narod.ru

Н. Культин «Основы программирования в Delphi7»

.В. В. Фаронов «Delphi6»

Борис Корпов «Delphi» специальный справочник

Халықова.К.З «Программалау тілдерін оқыту», 2005ж

6.Дантеман Джефф, Мишел Джим. Программирование в среде Delphi

25






Написать комментарий
Имя:*
E-Mail:
Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Выбор цвета | Скрытый текст Вставка цитаты Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера
Введите код: *


Бұл сайтта Қазақстанның түкпір-түкпірінен жиналған қазақ тіліндегі рефераттар мен курстық және дипломдық жұмыстар ұсынылған. Қазіргі таңда www.topreferat.com.kz сайтының қазақ тіліндегі жұмыстар базасы бүкіл интернеттегі ең үлкен база болып табылады! Біздің базадағы жұмыстар саны 15000-нан асады. Біз бұл жетістікпен тоқтап қалмаймыз! Біз базамызды одан әрі толықтырамыз.
» » Кластар иерархиясы, мұрагерлік, полиморфизм курстық жұмыс

© 2011-2016 Скачать бесплатно на topreferat.com.kz курсовые, дипломные и рефераты на телефон, на планшет и на компьютер.
При копировании материала активная ссылка на источник обязательна.


Мнение посетителей:
 

После 9 класса Вы:

Пойду в 10, 11, закончу школу полностью
Пойду в Колледж
Пойду в ПТУ
Пойду работать
Снова пойду в 9 класс

 
 
Похожие:
  • Delphi ортасында анықтамалық жүйе құру диплом жұмысы
  • Құпия кілтті алгоритмдер курстық жұмыс
  • Құпия кілтті алгоритм курстық жұмыс
  • Тағайындау есебін Т.Е.Венгер әдісімен шешу курстық жұмыс
  • Мәтіндерді шифрлау курстық жұмыс
  • Кинотеатр деректер базасын құру курстық жұмыс
  • Кітапхана автоматтандырылған жұмыс орнының әзірлемесі курстық жұмыс
  • Дәріхана жұмысын автоматтандыру курстық жұмыс
  • Деканат деректер қоры курстық жұмыс
  • Банк депозиттері мәліметтер базасы курстық жұмыс
  • Аптека жұмысының мәліметтер қорын құру курстық жұмыс
  • Автосалон мәліметтер базасы курстық жұмыс
  • Автоматтандырылған қоңырау бағдарламасы курстық жұмыс
  • Delpһі программалау тілі курстық жұмыс
  • Delphi бағдарламалау ортасында тест құрастыру курстық жұмыс
  • COM – технологиясы курстық жұмыс
  • Мәліметтер базасындағы футбол командалары реферат
  • Дельфидегі мультимедия реферат
  • Delphi-дің мультимедиалық мүмкіндіктері реферат
  • Delphi жүйесінде Суретті жина ойынын құрастыру реферат