I бөлім. Delphi бағдарламалау ортасымен танысу delphi объектiлi-бағытталған бағдарламалау тілі туралы қысқаша мағлұмат



жүктеу 0,94 Mb.
бет5/11
Дата16.01.2022
өлшемі0,94 Mb.
#32685
1   2   3   4   5   6   7   8   9   10   11
ОББ

Өрiстер

Форманы жобалау кезінде Delphi 7 қосымшасы Бағдарлама текстіне қажетті обьектілерді автоматты түрде қосып отырады. Бағдарламалаушы форма оқиғасын немесе оның компонентін өңдеу функциясын құрғанда, Delphi 7 қосымша форма класынын сипаттамасына әдісті хабарлауды қосады.

interface

type

TMyClass=class(TParentClass)

private

FField: integer

protected

function GetField: string;

procedure SetField(AValue: string);

published

Қасиеттер

Delphi 7 тілінде обьект алаңдарына енуге шектеу қою обьект қасиеттерінің көмегімен орналасады. Обьект қасиеті, осы қасиеттің мәнін сақтайтын алаңмен және қасиет алаңына енетін екі әдіспен сипатталады. Қасиеттің мәнін алатын әдіс қасиетті оқу әдісі деп аталады. Класс сипаттамасында қасиет атының алдында property (қасиет) сөзі жазылады. Қасиет атынан соң оның типі, сонан соң қасиет мәндеіне енуді қамтамассыз ететін әдістердің аттары көрсетіледі.

property PField: string

read GetField write SetField;

end;

var MyObj: TMyClass; implementation

function TMyClass.GetField: string;

begin

Result:=IntToStr(FField);

end;

procedure TMyClass.SetField(AValue: string);

var x,Code: integer;

begin

Val(AValue,x,Code);

if (x<>FField) and (Code=0) then

begin

FField:=x;

end;

end;

end.

Әдiстер

Әдіс орындалу үшін обьект аты мен әдіс атын бір-бірінен нүкте арқылы ажыратып көрсету қажет.

Бағдарламаны дайындау барысында Delphi 7 мо­дульінiң Interface бөлi­мiде формаға енгiзiлген компо­нент­тер мен оқи­ға таңдалған әдiстердi сипаттауавтоматты түрде ен­гiзіледі, әдiс­тердi iске асыру нұсқау­лары мо­дульдiң implementation бөлi­мiне қолымен жазы­лады.



constructor TSampleControl.Create = class(TWinControl)

begin

inherited Create(AOwner) ;

FHeight := 25;

FWidth := 50;

FColor := clWindows;

end;

Объект

Өрiстер, қа­си­ет­­­тер және әдiс­тердiң бiрлiгiнен тұ­ратын тип немесе жалпы түрде, өң­деу әдiстерi не қасиеттерi ор­тақ түрде сипатталатын объек­тiлер (нысандар) жиынтығы. Delphi 7-дегі динамикалық құрылым. Айнымалы обьект мәліметтерден емес, обьектінің мәліметтеріне сілтемеден тұрады. Сондықтан бағдарламалаушы осы мәліметтер үшін жады бөлуді ойластырылуы тиіс.

Var

Flower: Tperson;

Rose:Tperson;



Оқиға

Жүйе объект үшiн жадтың динамикалық облы­сынан ар­найы орын қалдырады. Яғни, шын мәнiнде, объект жай ай­­­ны­ма­лы емес, ол - жадтың динамикалық облысының кез­дейсоқ ад­ре­сiн сақтайтын көрсеткiш.

Объект құрылған кезде автоматты түрде конструктор (cons­tructor) деп аталатын әдiс ша­қырылып, ол объектiнi дина­ми­калық облыс­та орна­ластырады, динамикалық жадтан объ­ек­тiнi арнайы деструктор (destructor) әдiсi жояды.



TControl компонентіне оқиға:

type

TControl = class(TComponent)

private

FOnClick : TNotifyEvent;

FOnDblClick : TNotifyEvent

20

FOnMouseDown : TMouseEvent;

FOnMouseMove : TMouseMiveEvent;



protected



procedure Click; dynamic;

property OnClick: TNotifyEvent

read FOnClick write FOnClick;

property OnDblClick : TNotifyEvent

read FOnDblClick write OnDblClick;

property OnMouseDown : TMouseEvent

read FOnMouseDown write FOnMouseDown;

property OnMouseMove : TMouseMoveEvent

read FOnMouseMove write FOnMouseMove;



end;



Kласс

Delphi 7-нің интерфейсін жүзеге асыру үшін кластар кітапханасын қолданады. Онда формада қолданылатын әртүрлі кластардың үлкен саны және форманың әртүрлі компоненттері қамтылған. Delphi 7-де класс атауын T әрпiнен бастау­ келiсiлген. Фор­маға енгiзiлген компонент данасы сандық индекс қосылған класс ата­уын алады. Кластың өрiстерi мен қасиеттерiн өңдейтiн про­цедуралар мен функциялар класс обьектілеріне арналған іс-әрекеттерді орындайды.

Мұндағы класс мүшелерi - өрiстер, қасиеттер және әдiс­тер.

TForm1 = class (TForm) жазуы TForm класының үлгiсi­мен құры­ла­тын жаңа (туынды) TForm1 класын анықтайды. Form1 : TForm1 жолындағы Form1 айнымалысы - класс да­насы


Туынды кластың сипатталу түрi:

type

<туынды класс атауы>=class (<негiзгi класс атауы>);

<класс мүшелерiнiң тiзiмi>

end;

var

<объект> : <класс атауы>;

Мысалы,
type

TForm1 = class (TForm)

Button1 : TButton;

Label1 : TLabel;

Procedure Button1Click ( Sender : TObject);

end;

var Form1 : TForm1;

Объектiлi бағдарламалауда барлық кластар иерархиялық түрде негiзгi TObject класынан тарайды (Tobject  Tpersistent  Tcomponent  …). Әдетте не­­гiзгi класты аталық, бағыныңқы клас­тар­ды туынды не сәбилiк кластар деп атайды (TObject – барлық кластардың арғы атасы, TComponent – барлық иерар­хиялық компоненттердiң жоғарғысы (компонент деп Tcom­ponent класының мұрагерi болатын класс данасын атайды)). Әр ұрпақ өзiнiң аталық класының мүмкiндiктерiн (өрiстерiнiң, қасиет­терiнiң, әдiстерiнiң сипаттамаларын) қабылдай­ды. Мы­салы, TObject класының Create (бастапқы мән мен­шiктеу (ини­циал­дау)) әдiсi барлық туынды кластарға тиiстi (TObject класында конструктор Create деп аталады). Әр ұрпақ өзiне қо­­сым­ша жаңа мүмкiн­дiктер (сипаттамалар) қосып, келесi ұр­пақтарға беруi мүмкiн (1-сурет).



1.1-сурет. Фигуралар класы


Жалпы, Delphi 7-де класс деп өзiне ұқсас даналарды дайындау үшiн үлгi түрiнде алынатын, толық түрде дайын­далған бағдарлама үзiндiсiн деп те атайды. Бағдарламалаушы бұрын да­­­­йын­­далған класс данасының көшiрмесiн түрлi бағдарламаларға не бiр бағдарламаның түрлi жерлерiне енгiзiп, бағдарламалауды және оның көлемiн көп жеңiлдетуiне болады.

Delphi 7 құрамына жүздеген дайын кластар енгiзiлген. Әр ком­понент қатаң түрде тек бiр класқа ғана тиiстi. Мысалы, Delphi 7-де форма (TForm) компонентi – Forma класына тиiстi, осы типтi ай­нымалы (Form1) – класс объ­ектiсi. Класс бөлiгi ретiнде сипатталып, модульдiң Implemen­tation (iске асыру) бөлiгiнде мәтiнi жазылатын сәйкес процедура – әдiс, мысалы, procedure TForm1.Button1Click.

Обьектілі-бағытталған бағдарламалауда класс үшiн мұрагерлiк, инкапсуляция және поли­морфизм принциптерi енгiзiлген.



жүктеу 0,94 Mb.

Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   10   11




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау