You are on page 1of 11

2.

Osnovni pojmovi objektno-


orijentisanog programiranja
 Objekat - integralna celina podataka i procedura
za rad sa njima. Zbog prisustva procedura u
objektima, objekti imaju mogu}nost da samostalno
deluju, tj. postaju dinami~ki.
 Objektno-orijentisano programiranje -
programska paradigma zasnovana na skupu
objekata koji dejstvuju me|usobno. Glavne obrade
zasnivaju se na manipulisanju sa objektima.
 Metod - funkcija koja je sastavni deo objekta, tj.
postupak kojim se realizuje poruka upu}ena
objektu.
 Poruka - skup informacija koji se {alje objektu.
Sastoji se iz adrese (objekta primaoca poruke) i
saop{tenja (kazuje {ta treba da se uradi).
 Klasa - Skup objekatasa zajedni~kim svojstvima
(koji se pona{aju na isti na~in). Defini{e {ablon
za kreiranje instanci .
 Primerak (instanca) - konkretan objekat iz
klase. Skup instanci sa skupom metoda kreira
jednu klasu.
 Klasa B je potklasa klase A ako su svi primerci
klase B istovremeno i primerci klase A. Za klasu
ka`emo da je natklasa klase B. Potklase
nastaju dodavanjem novih svojstava (metoda)
postoje}oj klasi.
 Nasle|ivanje - mehanizam za kreiranje novih
klasa iz postoje}ih. Nasle|ivanjem se formiraju
relacije izme|u jedne i vi{e drugih klasa.
 Polimorfizam - Mogu}nost primene istog
metoda (operatora) na primerke razli~itih klasa.
2.1. Primeri nasle|ivanja
Prilikom projektovanja programa uo~avaju
se veze izme|u pojedinih klasa i na~in
povezivanja tih klasa sa drugim klasama.
Ovde je bitna uloga nasle|ivanja.
  @ivo bi}e

  @ivotinja  Biljka

  Sisar  Ptica

  Grabljivica  Peva~ica

  Jastreb  Orao
Jos jedan primer hijerarhijskog nasle|
ivanja

 Biblote~ni primerak

 ~asopis knjiga
mikrofilm

 dnevni ostali

 beletristika
stru~na
Primer vi{estrukog nasle|ivanja
(klasa mo`e imati vi{e direktnih
natklasa)
 letilica vozilo brod

 jedrilica avion sa motorom


bez motora

 putni~ko teretno
amfibija
Vi{estruko nasle|ivanje nije podr`ano u
Java-jeziku, ali jeste u C++.
2.2. Uloga pojedinih pojmova (Wagner)

 Ada, Actors
Objektno-
zasnovani
+klasa
jezici
Klasno zasnovani
jezici +nasle|
CLU ivanje
Objetno-
orijentisani
jezici
Smalltalk, Simula
67
2.3. Za{to je objektno-orijentisan
koncept do`iveo ovakav uspeh?
 Rejuzabilnost softvera.
 Pogodan za: analizu, projektovanje i
programiranje.
 Najpogodniji za simuliranje dogo|aja.
 Obja{nje se delimi~no mo`e na}i
kroz pogled istorijskog razvoja OOP.
– 1967: Dall i Simula 67.
– 70-tih godina: A. Kay i Smalltalk.
– Razvoj ostalih OO jezika.
3. Java kao OO-jezik
Objektno-orijentisan sa HIJERARHIJSKOM strukturom klasa.

Object

MojaKlasa TvojaKlasa …….


Component

TvojaPotkl Applet

MojAplet
3.1. Interfejsi u Java-jeziku
INTERFEJS - skup imenovanih metoda i konstanti , koji
nisu nasle|eni od natklasa, niti definisani u samoj klasi, a
koji odre|uju neka dodatna svojstva klase.

DrugiIntf
Object

MojaKlasa TvojaKlasa …….


Component

TvojaPotkl Applet
as
PrviInt
f MojAplet
3.2. Jo{ neka svojstva klasa

– Klase su organizovane po PAKETIMA. Osnovni paketi su:


java.lang, java.util, java.io, java.net, java.awt,
java.applet.
– Paket je skup klasa i interfejsa namenjenih jednoj vrsti
posla (koje ~ine srodnu celinu)
– Sve klase iz paketa ~ine BIBLIOTEKU KLASA.
– Sve aplikacije i apleti se realizuju pomo}u (preko) KLASA.
– Za svaku klasu bitne 2 karakteristike:
• stanje (opisuje se preko promenljivih klase i
instancnih promenljivih)
• pona{anje njenih instaci (odre|uje se preko metoda.
3.3. Objekti u Java-jeziku
Objekat je potpuno odre|en svojim atributima i
pona{anjem.
 Atributi objekta - instancne promenljive. Klasom
je definisan njihov tip, a za svaku instacu,
istancna promenljiva ima konkretnu vrednost.
Primeri:
 tacka (x,y, boja)
 automobil(broj sasije, broj motora, boja, broj sedi{ta)
 Pona{anje objekta odte|eno je metodima u klasi
koji mogu dejstvovati na taj objekat. Primeri:
 Uzeti x-koordinatu, pomeriti ta~ku za dx, dy, …
 Startovati motor, promeniti brzinu, zaustaviti motor, …
 Student, TestStudent, Poslediplomc,
TestStudent1

You might also like