Click here to load reader

Objektno programiranje

  • View
    56

  • Download
    0

Embed Size (px)

DESCRIPTION

Objektno programiranje. Tudi: objektno/predmetno usmerjeno programiranje Osnovni pojmi. Objekti. Objekt je skupek podatkov, s katerim želimo upravljati kot s celoto. Ima Podatke kaj o objektu vemo/hranimo Metode Kaj objekt zna Kakšne metode lahko izvajamo nad njim - PowerPoint PPT Presentation

Text of Objektno programiranje

ObjektiFakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Objektno programiranje
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Objekti
Objekt je skupek podatkov, s katerim elimo upravljati kot s celoto.
Ima
Podatke
Kakšne metode lahko izvajamo nad njim
*
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Znani objekti
Nekaj primerov objektov iz standardnega razvojnega okolja za javo:
Objekt tipa BufferedReader predstavlja vhodni kanal. Kadar elimo brati s tipkovnice ali z datoteke, naredimo tak objekt in kliemo njegovo metodo readLine za branje ene vrstice.
Objekt System.out predstavlja standardni izhod. Kadar elimo kaj izpisati na zaslon, pokliemo metodo println na objektu System.out.
Objekt tipa Color predstavlja barvo na zaslonu.
Objekt tipa Applet je grafina aplikacija, ki jo lahko vstavimo v spletno stran ali poenemo samostojno.
*
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Objekti
stanja:
oga:
Metode: sprememba velikosti, sprememba poloaja, …
Ulomek:
*
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Programiranje v javi
Ustvarjanje objektov in njihova uporaba
"Ukazovanje" objektom, kaj naj ponejo
Objekt za izpolnitev doloene naloge potrebuje druge objekte in njihove metode
Zaetek
Izvajanje metode main – ustvarjanje objektov, ukazovanje objektom, spremljanje reakcij objektov, …
*
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Objekti
Osnovni pristop objektnega programiranja
Ko elimo kak podatek (objekt) obdelati, objektu (podatku) signaliziramo, kaj naj se zgodi.
Pokliemo ustrezno metodo v objektu.
*
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Princip rne škatle
Zanima nas inteligenni kolinik te osebe.
obj.kolikoJeIQ()
Objekt se odzove z odgovorom
Uporabnika ne zanima, kako je objekt prišel do odgovora, le kaj ga lahko vpraša in v kakšni obliki bo dobil odgovor!
Za uporabnika (tistega, ki objektu naroi izvajanje metode) ni vano, kako je objekt odgovoril – kako je prišel do IQ (je to podatek, ki je zapisan nekje v objektu, je to rezultat nekega preraunavanja … )
Koliko je tvoj IQ ?
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Prednosti "rne škatle"
Spremembe v programih, ki razred uporabljajo, niso potrebne
Seveda, e je nain spraševanja in odgovarjanja ostal nespremenjen
*
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Klasino programiranje
Klasino programiranje:
program = metode
pokliemo ustrezno metodo z argumenti
argumenti: podatki, ki naj jih obdela.
*
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Klasino/objektno progr.
Klasino:
f(x);
Objektno:
x.f();
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Od kje razredi?
Math, String, System, BufferedReader, Applet, JFrame, …
Drugi viri
*
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Moj prvi razred
MojR prvi;
prvi.izpisi();
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Objekt in ime spremenljivke
new NekiObjekt();
V pomnilniku se je naredil objekt tipa NekiObjekt() po pravilih, ki so doloena z opisom razreda NekiObjekt
a = new NekiObjekt();
*
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Ustvarjanje objektov
Razred je šablona, ki definira spremenljivke in metode skupne vsem objektom iste vrste.
class
Ustvarimo ga z new
NekiObjekt a;
*
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Java in objekti
Razred (class) je opis vrste objekta (nart, kako naj bo objekt videti) – opis ideje objekta
Primerek razreda (instanca) – konkretni objekt
class Neki {…
*
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Ustvarjanje objektov
Reemo:
Toneje
V spremenljivki ime je naslov nekega objekta tipa Ulomek, ki predstavlja ulomek ¾.
Spremenljivka ime kae na objekt tipa Ulomek, ki …
Prvi ukaz je dejansko spoj dveh stavkov:
deklaracija
prireditev
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Ustvarjanje objektov
Ulomek ime;
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Ustvarjanje objektov
vasih “skrito”
tabela[0] = 1; …
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Še en zgled
Poglejmo si še en zgled. Denimo, da bi radi napisali program, ki bo prebral nek ulomek in mu prištel 1/2.
"klasino" se bomo tega lotili takole
*
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Poveaj ulomek "klasino"
{
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Poveaj ulomek - objektno
"se zna" poveati za drug ulomek
Vsebuje metodo, ki ta ulomek povea za drug ulomek
*
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Ulomki - objektno
this.stevec = st;
this.imenovalec = im;
{
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Ulomki - objektno
// vnos podatkov
// "delo"
moj.pristej(polovica);
// izpis
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Primerjava
"klasino"
// "delo"
moj.pristej(polovica);
Fakulteta za matematiko in fiziko http://up.fmf.uni-lj.si
Objektno programiranje
Standardna knjinica
Druge knjinice
*

Search related