Professional Documents
Culture Documents
1.uvod U Javu
1.uvod U Javu
PROGRAMIRANJE
ŠTA JE JAVA?
Java je programski jezik i platforma.
Java je robustan, siguran i objektno-orijentisan programski jezik
visokog nivoa.
PLATFORMA
Svako hardversko ili softversko okruženje u kojem se program radi
naziva se platforma. Pošto Java ima svoje sopstveno runtime
okruženje (JRE) i API, ona se naziva platformom.
JAVA PRIMJER
class Simple{
public static void main(String args[]){
System.out.println("Hello Java");
}
}
Ispis na ekranu:
Hello Java
GDJE SE KORISTI?
Prema kompaniji Sun, 3 milijarde uređaja koristi Javu. Postoji mnogo
uređaja gdje se Java trenutno koristi. Navešćemo neke od njih:
Desktop aplikacije kao što su acrobat reader, media player, antivirus itd.
Web aplikacije.
Enterprise aplikacije kao što su bankarske aplikacije.
Mobilni uređaji.
Ugrađeni (Embedded) sistemi.
Smart Card
Robotika
Igre itd.
TIPOVI JAVA APLIKACIJA
PROGRAMIRANJE
HISTORIJAT JAVE
Jednostavnost Prenosivost
Objektna orijentisanost Dinamičnost
Platformna nezavisnost Interpretiranost
Sigurnost Visoke performanse
Robustnost Višenitnost (Multithread)
Arhitekturna neutralnost Distribuiranost
JEDNOSTAVNOST
Prema kompaniji Sun, jezik Java je jednostavan zato što:
ima sintaksu koja je zasnovana na C++ (pa je za programere lakše
da ga nauče nakon C++).
je uklonio mnogo zbunjujućih i/ili rijetko korištenih karakteristika
napr. eksplicitne pointere, preopterećenje operatora itd.
nema potrebe za uklanjanjem nereferenciranih objekata jer sadrži
tzv. Automatsko sakupljanje smeća (Automatic Garbage Collection).
OBJEKTNA
ORIJENTISANOST
Objektna orijentisanost znači da se softver organizuje kao kombinacija
različitih tipova objekata koji uključuju i podatke i ponašanje.
Objektno-orijentisano programiranje (OOP) je metodologija koja
pojednostavljuje razvoj i održavanje softvera tako što obezbjeđuje određena
pravila.
Osnovni koncepti OOP su:
Objekt
Klasa
Nasljeđivanje
Polimorfizam
Apstrakcija
Enkapsulacija
PLATFORMNA
NEZAVISNOST
Platforma je hardversko ili softversko okruženje u kojem program
radi. Dakle, postoje dva tipa platformi: softverski zasnovane i
hardverski zasnovane.
Java obezbjeđuje softverski zasnovanu platformu.
Java platforma se razlikuje od većine drugih platformi u smislu da je
to softverski zasnovana platforma koja radi na drugim hardverski
zasnovanim platformama.
Ona ima dvije komponente:
Runtime okruženje
API (Application Programming Interface)
PLATFORMNA
NEZAVISNOST
Java kod se može pokrenuti na
različitim platformama napr.
Windows, Linux, Sun Solaris,
Mac/OS itd. Java kod se prvo
kompajlira, a onda konvertuje u
tzv. bytecode.
Ovaj bytecode je platformno
nezavisan kod i može se
pokrenuti na različitim
platformama.
Ovaj princip se naziva Write
Once Run Anywhere (WORA),
tj. napiši jednom pokreni svuda.
SIGURNOST
Java je sigurna zato što:
nema eksplicitnih pointera
programi se pokreću unutar tzv. “vreće s pijeskom u virtualnoj
mašini” (Virtual Machine Sandbox)
SIGURNOST
Classloader – poboljšava sigurnost razdvajajući paket za klase
lokalnog fajl sistema od onih koje su uvezene iz mrežnih izvora.
Bytecode Verifikator – provjerava fragmente koda na ilegalni kod
koji može narušiti pristupna prava objektima.
Security Manager – određuje kojim resursima klasa može pristupiti,
napr. čitanje i pisanje po lokalnom disku.
PROGRAMIRANJE JVM
THE JAVA VIRTUAL
MACHINE – JVM
Programi pisani u Javi se prevode u strojni jezik, ali u strojni jezik
računala koje zapravo ne postoji. Ovo takozvano prividno (virtual)
računalo se zove "Java Virtual Machine".
Strojni jezik za Java Virtual Machine se zove Java bytecode.
Jedna od glavnih prednosti Jave je da zapravo može biti korištena na
bilo kojem računaru.
Sve što je na tom računaru potrebno je interpreter za Java bajt kod.
Takav interpreter oponaša Java virtual machine na isti način kao što
prividno računalo oponaša osobno računalo.
Java interpreter je potreban za svaku vrstu računala, ali nakon što
računalo dobije Java bajt kod interpreter, može izvršavati bilo koji
Java bajt kod program.
A isti taj Java bajt kod program može biti izvršen na bilo kojem
računalu koje ima takav interpreter.
N
n
rate
x15
quite_a_long_name
HelloWorld
Velika i mala slova smatraju se različitima pa su:
HelloWorld
helloworld
HELLOWORLD i
HElloWorLD
class
public
static
if
else
while
VARIJABLE
Programi upravljaju podacima spremljenim u memoriji. U
mašinskom jeziku podaci se mogu pozivati samo pozivom numeričke
adrese memorijske lokacije na kojoj je podatak spremljen. U Javi se
za poziv podataka koriste imena umjesto brojeva. Programer treba
zapamtiti samo ime, a računar vodi računa o tome gdje je stvarno
podatak smješten. Ovakvo ime koje služi za pozivanje podataka
spremljenih u memoriji se zove varijabla.
Jedini način na koji se u Javi može spremiti podatak u varijablu je
korištenjem naredbe pridjeljivanja vrijednosti (assignment statement)
u obliku:
varijabla = izraz;
gdje izraz predstavlja bilo što što se odnosi na neku vrijednost ili
računa neku vrijednost. Kad računar za vrijeme izvođenje naiđe na
naredbu pridjeljivanja, procjenjuje izraz i rezultat sprema u varijablu.
Varijabla se može koristit u programu samo ako je prethodno
deklarirana. Naredba deklariranja varijable (variable declaration
statement) se koristit da bi se varijabla deklarirala i pridijelilo joj se
ime. Kada računar izvršava naredbu deklaracije varijable, rezervira
dio memorije za tu varijablu i povezuje ime varijable s tim dijelom
memorije. Jednostavni oblik naredbe deklaracije je:
tip_varijable ime_varijable;
• lokalne varijable
• instansne varijable
• statičke varijable
Lokalne varijable
Varijabla koja je deklarisana unutar metoda se naziva lokalna
varijabla.
Instansna varijabla
Varijabla koja je deklarisana unutar klase ali izvan metoda se naziva
instansna varijabla. Nije deklarisana kao statička.
Statička varijabla
Varijabla koja je deklarisana kao statička se naziva statička varijabla.
Ona ne može biti lokalna.
PRIMJER ZA
RAZUMIJEVANJE TIPOVA
VARIJABLI
class A{
int data=50; //instansna varijabla
static int m=100; //statička varijabla
void method(){
int n=90; //lokalna varijabla
}
} //kraj klase
TIPOVI PODATAKA U JAVI
U Javi, postoje dva tipa
podataka
•primitivni tipovi podataka
•neprimitivni tipovi podataka
PRIMITIVNI TIPOVI
byte •Prve četiri vrste spremaju cijele
brojeve, a razlikuju se po
short rasponu brojeva koje mogu
int spremiti.