Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
ZveřejnilDamián Procházka
1
Algoritmizace a programování Objektově orientované programování - 16 Mgr. Josef Nožička IKT Algoritmizace a programování www.zlinskedumy.cz
2
AnotaceMateriál seznamuje žáky se základy objektově orientovaného programování. Musí být doplněn výkladem. AutorMgr. Josef Nožička (Autor) JazykČeština Očekávaný výstup26–41-M/01 Elektrotechnika 78-42-M/01 Technické lyceum Speciální vzdělávací potřeby - žádné - Klíčová slovaObjekt, třída, konstruktor Druh učebního materiáluPrezentace Druh interaktivityKombinované Cílová skupinaŽák Stupeň a typ vzděláváníodborné vzdělávání Typická věková skupina16 - 19 let Vazby na ostatní materiályJe součástí IKT.
3
OOP – základní filozofie Základní filozofie objektově orientovaného programování (dále jen OOP) spočívá v tom, že program se skládá ze skupiny objektů, které obsahují určitá data a mají definované společné rozhraní, s jehož pomocí spolu vzájemně komunikují. Také programovací jazyk Delphi je objektově orientovaný jazyk, který u některých svých konstrukcí využívá principů OOP. Výhod OOP může v Delphi využívat i programátor při tvorbě vlastních programů.
4
Datový typ třída (class) Pro definici vlastních objektů se v Delphi používá datový typ třída. Obecné schéma definice třídy je následující: jmeno=class seznam proměnných; seznam metod; end; Poznámka: Do definice třídy dále mohou být navíc včleněna klíčová slova private, public nebo published, pomocí nichž je definováno zabezpečení jednotlivých částí třídy.
5
Příklad definice třídy type Thodiny=class hodiny:byte; minuty:byte; sekundy:byte; constructor Init (h,m,s:byte); procedure Nastavhodiny (h,m,s:byte); procedure Ukazcas; end; Poznámka: Uvedená třída obsahuje 3 proměnné (hodiny, minuty, sekundy) a 3 metody (Init, Nastavhodiny, Ukazcas).
6
Konstruktor a jeho význam Konstruktor je speciální metoda, která slouží k vytvoření jednotlivých objektů a inicializaci (nastavení) jejich počátečních hodnot. Například u třídy z předchozího snímku se s pomocí konstruktoru vytvoří objekty hodiny, minuty a sekundy (tj. vyhradí se pro ně místo v paměti o příslušné velikosti). Nastavení jejich počátečních hodnot se pak provede v těle konstruktoru: constructor Thodiny.Init (h,m,s:byte); begin hodiny:=h; minuty:=m; sekundy:=s; end;
7
Základní vlastnosti OOP Objektově orientované programování se vyznačuje 3 základními vlastnostmi, kterými se odlišuje od ostatních programátorských technik: Dědičnost Zapouzdření Polymorfismus
8
Dědičnost je vlastnost, která při definici třídy umožňuje převzít některé objekty z dříve definované třídy. Příklad: Tbudik=class(Thodiny) zvoneni:boolean; constructor Init (h,m,s:byte;zv:boolean); procedure Nastavzvoneni(zv:boolean); end; Třída Tbudik převezme všechny objekty z dříve definované třídy Thodiny a přidá k nim objekty nové (proměnnou zvoneni a metodu Nastavzvoneni). Konstruktor Init bude doplněn o nastavení proměnné zvoneni.
9
Zapouzdření Díky této vlastnosti je možné omezit přístup k jednotlivým datům tak, aby je nemohl používat nikdo jiný než jejich oprávněný vlastník. Každý objekt, který je součástí třídy, může přitom mít nastavenou různou úroveň zabezpečení, určenou jedním z těchto klíčových slov: private – objekt se může používat pouze v rámci jednotky, v níž je deklarován public – objekt je volně přístupný a zajišťuje komunikaci třídy s jejím okolím published – podobně jako public s tím rozdílem, že objekt obsahuje navíc informace o běhu programu
10
Polymorfismus Je vlastnost, umožňující zaměnitelnost jednotlivých objektů v rámci dědičné hierarchie. Jedná se o vlastnost, které většinou využívají pouze pokročilí programátoři. Používá se například v případě, kdy chceme v rámci nové třídy předefinovat metodu, převzatou (zděděnou) od jejího předka.
11
Zdroje PÍSEK, Slavoj. Delphi-začínáme programovat: podrobný průvodce začínajícího uživatele. Praha: Grada, 2002, ISBN 80-247-0547-8.
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.