





Studirajte zahvaljujući brojnim resursima koji su dostupni na Docsity-u
Zaradite bodove pomažući drugim studentima ili ih kupite uz Premium plan
Pripremite ispite
Studirajte zahvaljujući brojnim resursima koji su dostupni na Docsity-u
Nabavite poene za preuzimanje
Zaradite bodove pomažući drugim studentima ili ih kupite uz Premium plan
oop u programskom jeziku java, vezbe, objektno-orijentisano progrmiranje, informatika,Objektno-orijentisani koncept programiranja, primeri, zadaci
Tipologija: Vežbe
1 / 9
Ova stranica nije vidljiva u pregledu
Ne propustite važne delove!






Jednostavan Objektno orijentisan Distribuiran Multithreaded Dinamičan Nezavisan od arhitekture računara Portabilan Programski jezik visokih performansi Robustan Siguran
Primer 1.
Prethodni kod treba sačuvati u fajl HelloWorldApp.java
Kompajliranje izvornog fajla u .class fajl
Pokretanje izvršnog .class fajla
Java VM (virtuelna mašina) je dostupna na mnogim operativnim sistemima. Isti .class fajl moguće je pokrenuti na Windows-u, Linux-u, Solaris OS-u ili Mac OS-u.
Pogledajmo na primeru automobila, stanja i neka njegova moguća ponašanja:
Pisanje koda u individualne programske objekte nosi sa sobom nekoliko pogodnosti:
U prirodi se mogu pronaći mnogi objekti koji su istog tipa. Postoje hiljade automobila koji su od istog proizvođača i istog tipa. Svaki od tih automobila izrađen je prema istom spisku nacrta i ima iste komponente. U objektno-orijentisanoj terminologiji kažemo da je automobil instanca klase objekata automobila. Tačnije klasa je šematski plan za svaki objekat koji se kreira. To ćemo najbolje ilustrovati na primeru 1.2 u kome su kreirane dve klase Automobil i TestKlasa koja u sebi sadrži metodu main():
Primer 1.
class Automobil {
int cadence = 0; int speed = 0; int gear = 1;
void changeCadence( int newValue) { cadence = newValue; }
void changeGear( int newValue) { gear = newValue;
void speedUp( int increment) { speed = speed + increment; }
void applyBrakes( int decrement) { speed = speed - decrement; }
void printStates() { System. out .println("cadence:" + cadence + " speed:" + speed + " gear:" + gear); } }
class TestKlasa { public static void main(String[] args) {
// Kreiraj dva različita automobila Automobil automobil1 = new Automobil(); Automobil automobil2 = new Automobil();
// Pozovi metode kreiranih objekata automobil1.changeCadence(50); automobil1.speedUp(10); automobil1.changeGear(2); automobil1.printStates();
automobil2.changeCadence(50); automobil2.speedUp(10); automobil2.changeGear(2); automobil2.changeCadence(40); automobil2.speedUp(10); automobil2.changeGear(3); automobil2.printStates(); } }
Konstruktor
Konstruktor je metod ima isto ime kao i klasa, pozivase isključivo pri instanciranju objekata (dakle, operatorom new ), Nema povratne vrednosti, Klasa može imati više konstruktora (overloading na delu), Konstruktor bez parametara je default konstruktor i on postoji kada klasa nema posebno implementiran (naveden) ni jedan konstuktor.
Primer 1.
public class Cube {
int length; int breadth; int height;
public int getVolume() { return (length * breadth * height); }
Cube() { length = 10; breadth = 15; height = 5; System. out .println("Constructor with no parameters"); }
Cube( int l, int b) { length = l; breadth = b; height = 10; System. out .println("Constructor with two parameters"); }
Cube( int l, int b, int h) { length = l; breadth = b; height = h; System. out .println("Constructor with three parameters"); }
public static void main(String[] args) { Cube cubeObj1, cubeObj2; cubeObj1 = new Cube(); cubeObj2 = new Cube(10, 20, 30); System. out .println("Volume of Cube1 is : " + cubeObj1.getVolume());
System. out .println("Volume of Cube2 is : " + cubeObj2.getVolume()); } }
Zadatak 1
Napisati program koji ima sledeće klase (sve u istom fajlu):
class Prijava { String brInd; String rok; String nazivIspita;
Prijava(String brInd1, String rok1, String nazivIspita1) { brInd = brInd1; rok = rok1; nazivIspita = nazivIspita1; }