Автор работы: Пользователь скрыл имя, 13 Марта 2012 в 19:15, контрольная работа
Соңғы кезде бағдарламаға деген қызығушылық лезде өсті. Бұл күнделікті өмірдің ақпаратты-коммуникационды технологияның дамуы мен енгізуімен байланысты. Егер адам компьютермен жұмысы болса, онда ерте ме, кеш пе бағдарламалау тілегі де болады. Қазіргі уақытта пайдаланылатын арнайы компьютерлер арасында Windows операционды жүйесі кең тараған, әр адам бағдарлама жазуға талпынады.
Полиморфизм
Полиморфизм бұл класстардың қасиеттері мағынасы бойынша ұқсас проблемаларды әр түрлі тәсілдермен шешеді. Object Pascal рамкасындағы класстардың мінез-құлықтық қасиетіне кіретін әдістер жиынтығымен анықталады. Object Pascal-да полиморфизм жоғарғы механизмді мұрагерлікпен ғана сипатталмайды.
Классты құрастырушылар
Өрістер
Класстағы инкапсулирленген мәліметтер өрістер деп аталады. Өрістер кез келген тип болуы мүмкін, соның ішінде класстар. Мысалы:
type TMyClass = class
aIntField: Integer;
aStrField: String;
aObjField: TObject;
end;
Әр объект өрістердің бірегей жиынтығын алады. Біоақ берілген класстың барлық объектілері үшін әдістер мен қасиеттер жиынтығын жалпылама алады. Инкапсуляцияның ірге – тасының принципі өрістерге тек класстардың әдістер және қасиеттерінің көмегі арқылы қарауын талап етеді. Бірақта Object Pascal – да өрістерге тура қарауына рұқсат бере алады.
type
TMyClass = class
FIntField: Integer;
FStrField: String; end;
var
aObject: TMyClass;
begin
aObject.FIntField := 0;
aObject.FStrField := ' Символов жолы ';
end;
Әдістер
Класстағы инкапсулирленген процедуралар мен функциялар әдітер деп аталады. Олар әдеттегідей бағдарлама тәрізді жарияланады.
type
TMyClass = class
Function MyFunc(aPar: Integer): Integer;
Procedure MyProc;
end;
var
Класстың әдістеріне сондай-ақ олардың өрістеріне құрама есімдердің көмегі арқылы рұқсат алынады:
aObject: TMyClass;
begin
aObject.MyProc;
end;
Класстың әдістері ұрпақтарда қайта тығылуы мүмкін. Мысалы:
type
TParentClass = class Procedure DoWork;
end;
TChildClass = class(TParentClass) Procedure DoWork;
end;
Екі класстың да ұрпақтары аты бойынша DoWork процедурасына ұқсастырып орындауы мүмкін, бірақ ол әр-түрлі орындалады.
Қасиет
Қасиет - өрітерге рұқсат алуды реттейтін класстардың арнайы механизмі. Әдетте қасиет кейбір өрістермен тығыз байланысты, және жазу кезінде қолданылатын класстың әдістеріне көрсетеді.
type
TaClass = class
IntField: Integer; Function GetField: Integer;
Procedure SetField (Value: Integers);
Property IntegerValue: Integer read GetField
write SetField;
end;
Бағдарлама контекстінде қасиет өзін әдеттегідей өрістер тәрізді ұстайды. Мысалы, мынадай операторларды жазуымызға болады:
var
aClass: TaClass;
Value: Integer;
begin
aClass := TaClass.Create;
aClass.IntegerValue := 0;
Value := aClass.IntegerValue;
aClass.Destroy; // Қажеті жоқ объектіні жою
end;
Меншіктеу операторын да көрсетуге болады:
aClass.IntField := NewValue;