ref 2004 04 26 object pascal

background image

OBJECT PASCAL

OBJECT PASCAL

Marzena Szałas

background image

Object Pascal

2

WSTĘP

WSTĘP

Object Pascal podstawowym
językiem programowania w Delphi;

dostępne elementy:

obsługa wyjątków;

zmienne typu Variant;

tablice otwarte;

domyślne parametry procedur i
funkcji;

tablice dynamiczne…

background image

Object Pascal

3

STRESZCZENIE

STRESZCZENIE

podstawy języka Object Pascal:

zmienne, stałe, operatory, typy
języka i definiowane przez
użytkownika, instrukcje warunkowe,
pętle, procedury i funkcje, moduły,
pakiety, wykorzystanie obiektów,
strukturalna obsługa wyjątków;

komponenty w Delphi;

background image

Object Pascal

4

ZMIENNE I STAŁE

ZMIENNE I STAŁE

zmienne:

var

zmienna1, zmienna2 : integer;
zmienna3 : string = ‘Napis domyślny’;

stałe:

const

ErrorString = ‘Niebezpieczeństwo’;
i : integer = 10;

background image

Object Pascal

5

OPERATORY

OPERATORY

przypisania: := ;

porównania: = <> < > <= >= ;

logiczne: and or not ;

arytmetyczne: + - * / div mod ;

bitowe: and or not xor shl shr ;

zwiększania/zmniejszania: Inc()
Dec() ;

background image

Object Pascal

6

TYPY JĘZYKA OBJECT

TYPY JĘZYKA OBJECT

PASCAL

PASCAL

bezpieczeństwo typów;

przykładowe typy:

typy całkowitoliczbowe: Integer, Shortint,

Byte…

typy zmiennoprzecinkowe: Single, Double,

Currency…

typy logiczne: Boolean, LongBool…

3 typy reprezentujące pojedynczy znak:

AnsiChar, WideChar i Char;

łańcuchy: AnsiString, ShortString,

WideString…

typ Variant (wartości UNASSIGNED i NULL);

background image

Object Pascal

7

TYPY DEFINIOWANE

TYPY DEFINIOWANE

PRZEZ

PRZEZ

UŻYTKOWNIKA

UŻYTKOWNIKA

mają postać:

tablic (tablice dynamiczne):

type

Tablica1 = array [0..5] of integer;

var

Tab1 : Tablica;
Tab2 : array [2..5] of integer;

Tab3 : array of string;

background image

Object Pascal

8

TYPY DEFINIOWANE

TYPY DEFINIOWANE

PRZEZ

PRZEZ

UŻYTKOWNIKA

UŻYTKOWNIKA

rekordów:

type

MojRekord = Record

pole1 : integer;
pole2 : string

end;

wskaźników (procedury: New()

Dispose() GetMem() FreeMem() ):

type

PInt = ^integer;
PMojRekord = ^MojRekord;

background image

Object Pascal

9

TYPY DEFINIOWANE

TYPY DEFINIOWANE

PRZEZ

PRZEZ

UŻYTKOWNIKA

UŻYTKOWNIKA

zbiorów (dostępne operacje: in <= + -

*, procedury: Include() Exclude() ):

type
Znaki = set of Char;
Liczby = set of 0..9;

obiektów:

type
tp =  procedure (a: integer);

Tkl = class (TObject)

i  : integer;                
p1 : tp;                     

procedure p2; 

end;

typowe
(składowa z
danymi)

bardzo
nietypowe
(składowa z
danymi)

typowe
(metoda)

background image

Object Pascal

10

INSTRUKCJE

INSTRUKCJE

WARUNKOWE

WARUNKOWE

instrukcja If:

if x=5 then

instrukcja1

else

instrukcja2;

instrukcja wyboru:

case x of

1: instrukcja1;
2: instrukcja2;
else

instrukcja3;

end;

background image

Object Pascal

11

PĘTLE

PĘTLE

pętla For:

for i:=1 to 100 do

x := x + i;

pętla While…Do:

while x<>100 do

x := x + 1;

pętla Repeat…Until:

repeat

x := x + 1;

until x=100;

procedura Break();

procedura Continue();

background image

Object Pascal

12

PROCEDURY I FUNKCJE

PROCEDURY I FUNKCJE

zmienna Result;

przekazywanie parametrów:

przez wartość;

przez adres;

przez stałą;

mechanizm tablic otwartych:

procedure KazdaTablica (var X: array of integer)

background image

Object Pascal

13

PROCEDURY I FUNKCJE

PROCEDURY I FUNKCJE

przeciążanie procedur i funkcji:

function Divide (X, Y: Real): Real; overload;
begin

end;
function Divide (X, Y: Integer): Integer; overload;
begin

end;

domyślne parametry procedur i funkcji:

procedure MyMessage (Msg: String; Line: byte = 0);
MyMessage (‘Hello’,1);
MyMessage (‘Hello’);

background image

Object Pascal

14

MODUŁY

MODUŁY

Budowa:

dyrektywa UNIT;

część publiczna (interface);

część prywatna (implementation);

część inicjacyjna (initialization);

część kończąca (finalization);

cykliczne odwołanie do modułu;

background image

Object Pascal

15

PAKIETY

PAKIETY

podział ze względu na rolę pełnioną
w tworzonych aplikacjach:

pakiety wykonywalne;

pakiety środowiskowe;

pakiety uniwersalne;

pakiety pomocnicze;

background image

Object Pascal

16

PROGRAMOWANIE

PROGRAMOWANIE

OBIEKTOWE

OBIEKTOWE

dziedziczenie w Object Pascalu;

konstruktor Create() i destruktor
Destroy();

TMyObject = Class

SomeValue : Integer;
procedure SetSomeValue (AValue: Integer;
property Value: Integer read SomeValue write

SetSomeValue;

End;

pole

metoda

właściwoś
ć

background image

Object Pascal

17

PROGRAMOWANIE

PROGRAMOWANIE

OBIEKTOWE

OBIEKTOWE

zmienna predefiniowana Self;

typy metod obiektowych:

TFoo = class

procedure Statyczna;
procedure Wirtualna; virtual;
procedure Dynamiczna; dynamic;
procedure Komunikacyjna (var M: TMessage);

message wm_SomeMessage;

statyczn
ewirtualn

e

dynamiczn
e

zarządzając
e
komunikata
mi

background image

Object Pascal

18

PROGRAMOWANIE

PROGRAMOWANIE

OBIEKTOWE

OBIEKTOWE

przedefiniowywanie metod –
override;

przeciążanie metod – overload;

redefinicja metod klasy –
reintroduce;

metody zaprzyjaźnione;

background image

Object Pascal

19

PROGRAMOWANIE

PROGRAMOWANIE

OBIEKTOWE

OBIEKTOWE

widoczność elementów obiektu:

private;

protected;

public;

published;

automated;

background image

Object Pascal

20

INTERFEJSY

INTERFEJSY

numer identyfikacyjny interfejsu:
globalnie unikalny identyfikator – GUID;

nie mogą zawierać pól;

wszystkie metody interfejsu są
publiczne;

interfejs IInterface klasą bazową
wszystkich interfejsów;

Interfejs – typ o kontrolowanym czasie
życia;

background image

Object Pascal

21

STRUKTURALNA OBSŁUGA

STRUKTURALNA OBSŁUGA

WYJĄTKÓW

WYJĄTKÓW

wyjątek – obiekt zawierający
niezbędną informację;

try…finally…end – konstrukcja
gwarantująca wykonanie
określonego ciągu instrukcji,
niezależnie od błędu;

try…except…end – narzędzie do
obsługi błędów;

sekcja obsługi domyślnej;

background image

Object Pascal

22

STRUKTURALNA

STRUKTURALNA

OBSŁUGA WYJĄTKÓW

OBSŁUGA WYJĄTKÓW

klasa Exception – typ bazowy dla
obiektów reprezentujących wyjątki
(właściwość Message);

generowanie własnych wyjątków –
instrukcja Raise;

background image

Object Pascal

23

KOMPONENTY W DELPHI

KOMPONENTY W DELPHI

klasa każdego komponentu

pochodną klasy bazowej TComponent;

kontakt ze światem w większości za

pomocą właściwości (właściwość

Name i właściwość Tag);

komponent-właściciel;

mechanizm zdarzeń – specyfika

komponentów, wyróżniająca je

spośród innych klas;

background image

Object Pascal

24

KOMPONENTY W DELPHI

KOMPONENTY W DELPHI

podział komponentów:

komponenty niewizualne;

komponenty wizualne (relacja

rodzicielstwa);

rodzaje właściwości:

właściwości proste;

właściwości wyliczeniowe;

właściwości zbiorowe;

właściwości obiektowe;

właściwości tablicowe;

background image

Object Pascal

25

KOMPONENTY W DELPHI

KOMPONENTY W DELPHI

strumieniowość;

domyślne wartości właściwości;

background image

Object Pascal

26

LITERATURA

LITERATURA

A. Marciniak – „Object Pascal –
język programowania w środowisku
Borland Delphi 2.0”;

S. Teixeira, X. Pacheco – „Delphi 4.
Vademecum profesjonalisty”;

A. Grażyński, Z. Zarzycki – „Delphi 7
dla każdego”;


Document Outline


Wyszukiwarka

Podobne podstrony:
Sem II Transport, Podstawy Informatyki Wykład XXI Object Pascal Komponenty
4 01 00 04 26 02 10 (1)
2004 04, dzieje zlotego
3 Wprowadzenie do Object Pascal
Sem II Transport, Podstawy Informatyki Wykład XIV i XV Object Pascal Funkcje i procedury
6 Język Object Pascal
2004 04 Fonty w Linuksie [Administracja]
2004 04 Moduł zasilacza do wzmacniaczy mocy
Podstawy Informatyki Wykład XI Object Pascal Podstawy programowania w Object Pascalu
Finanse publiczne 2006 04 26 id Nieznany
IMiUE. 9.04.26, WSZYSTKO O ENERGII I ENERGETYCE, ENERGETYKA, KOPYDŁOWSKI
Wykład 04 [26.10.05], Biologia UWr, II rok, Zoologia Kręgowców
DzU 151 2004 04 16 O ochronie przyrody

więcej podobnych podstron