Programski
jezik "JAVA"
*)
Predavanja su napravljena na osnovi Java Lecture
Notes,biljeki za predavanja koja dri profesor
Elliotte Rusty Harold na Brooklyn
Polytechnic
University u okviru jednosemestralnog kolegija
Introduction to Java Programming. Predavanja također prate Sun-ov Java Tutorial koji za ovaj
kolegij smatramo obaveznom literaturom. Na raspolaganju vam je i biblioteka klasa, Java2
Platform Std. Ed. v1.3.1.
·
Prvo
predavanje upoznavanje s Javom
Aplikacija
Hello World kompiliranje i izvravanje programa for-petlje operatori za
increment i decrement naredbe za ispis Fibonaccijevi brojevi varijable i
tipovi podataka komentari argumenti na komandnoj liniji klase, atributi i
metode objekti razlikovanje objekata iste klase viestruko referenciranje
objekta statičke varijable metode prenoenje argumenta u metodu vraćanje
vrijednosti iz metoda setter metode getter metode ista imena varijabli i
metoda konstruktori skrivanje imena varijabli i ključna riječ this
polja
·
Drugo
predavanje proceduralna sintaksa
Primitivni
tipovi podataka operatori razmak literali identifikatori ključne
riječi separatori zbrajanje cijelih brojeva zbrajanje brojeva tipa double
mnoenje i dijeljenje neočekivani kvocijenti računanje ostatka, modulo
prioritet izvravanja operatora zagrade mijeanje tipova podataka
automatsko dodjeljivanje tipova podataka (casting) pretvaranje stringova u
brojeve podaci tipa char Unicode naredbe za kontrolu toka naredba if
ispitivanje jednakosti klauzula else klauzula else if while petlja for
petlja do while petlja booleovski podaci relacijski operatori prioritet
izvravanja relacijskih operatora ispitivanje jednakosti objekata naredba
break naredba continue labelirane petlje naredba switch-case
kondicionalni operator (? :) logički operatori prioritet izvravanja
logičkih operatora deklariranje polja kreiranje polja inicijaliziranje
polja metoda System.arraycopy() deklariranje, alociranje i inicijaliziranje
dvodimenzionalnih polja viedimenzionalna i neuravnoteena polja
·
Treće
predavanje objekti i klase
Objektno
orijentirano programiranje primjer: klasa Car kreiranje objekata uz pomoć
operatora new separator pristupa članovima .
uporaba objekata unutar različitih klasa inicijaliziranje atributa metode
pozivanje metoda implicirani this member varijable nasuprot lokalnim
varijablama prenoenje argumenata u metodu prenoenje argumenata u metodu,
primjer setter metode uporaba setter metoda, primjer vraćanje vrijednosti
iz metode vraćanje nekoliko vrijednosti iz metoda uporaba getter metoda,
primjer konstruktori uporaba konstruktora ograničenja zatita
pristupa(access protection) četiri razine zatite pristupa to treba biti
public, a to private? tri koristi od zatite pristupa primjer zatite
pristupa promjena implementacije
·
Četvrto
predavanje jo o klasama i objektima
to
je overloading?
ključna riječ this u konstruktorima nasljeđivanje nadklasa (superclass),
MotorVehicle podklase (subclasses), Motorcycle i Car podklase i polimorfizam
kaskadno nasljeđivanje statičke varijable i metode pozivanje statičkih
metoda ključna riječ final prekrivanje metoda (overriding) ispis objekata
pomoću toString() metoda ključna riječ abstract sučelja (interfaces)
implementiranje sučelja implementiranje sučelja Cloneable metoda
equals() - metoda hashCode() iz
java.lang.Object unutarnje klase (inner classes) iznimke (exceptions)
try-catch blok to moemo učiniti s uhvaćenom iznimkom? ključna riječ
finally razne vrste iznimaka hvatanje viestrukih iznimaka izbacivanje
iznimke, ključna riječ throws pisanje vlastitih klasa iznimaka metode klase
Exception biblioteka klasa dokumentiranje vlastitih programa importiranje
klasa i paketa primjeri metoda iz klase java.lang.Math klasa
java.util.Random klasa java.lang.String pisanje vlastitih paketa JAR
arhive
·
Peto
predavanje apleti
HTML,
jezik za oblikovanje web stranica - URL, jedinstvena adresa dokumenta dijelovi
URLa linkovi relativni URLovi applet Hello World to je applet? HTML
oznaka <applet> - odabir pozicije na stranici alternativni tekst
imenovanje appleta JAR arhive HTML oznaka <object> - veličina appleta
HTML oznaka <param> - obrada nepoznatog broja parametara sigurnost
appleta to applet moe činiti? s kim applet moe komunicirati? koliko CPU
vremena applet dobija? sigurnost i social engineering sprečavnje hakerskih
napada kroz applete ivotni ciklus appleta metode init(), start(), stop() i
destroy() koordinatni sustav objekti klase Graphics crtanje linija
crtanje pravokutnika punjenje pravokutnika brisanje pravokutnika elipse i
krunice primjer, bullseye poligoni viestruke linije (polylines)
učitavanje slika metode getCodeBase() i getDocumentBase() prikaz slike u
pravoj veličini skaliranje slika boje sistemske boje fontovi odabir
oblika i veličine fonta klasa FontMetrics
·
esto
predavanje - komponente
to
su komponente?
labele tri koraka u dodavanju komponente gdje je metoda paint()? metode
klase Label buttoni akcije na buttonima primjer appleta sa akcijom na
buttonu različiti obrasci za događaje viestruki ActionListeneri metode za
buttone Action naredbe vie buttona u istom appletu unutarnje klase kao
EventListeneri tekstualna polja primjer tekstualnih polja u Javi TextArea
klasa TextComponent sučelje TextListener i klasa TextEvent klasa Canvas
klasa Choice metode klase Choice klasa ItemListener klasa Checkbox
događaji iz klase Checkbox klasa CheckboxGroup primjer CheckboxGroup klasa
List metode klase List događaji klase List klasa Scrollbar
·
Sedmo
predavanje - događaji
Proceduralni
programi rep događaja (event queue) događaji niske razine (low level events)
događaji visoke razine (high level events) hijerarhija klasa događaja
obrada događaja različiti EventListeneri primjer uporabe MouseListenera
događaji vezani uz tipke (key events) kodovi tipki različite tipke i njihovi
kodovi modifikatori (modifier keys) modifikatori uz tipke mia događaji
vezani uz fokus (focus events) događaji vezani uz komponentu (component
events) adapteri primjer uporabe adaptera apsorbiranje događaja
prebacivanje događaja s niske na visoku razinu rad s repom događaja
·
Osmo
predavanje razmjetaj komponenti
Kontrola
razmjetaja komponenti razne implementacije layout managera razmjetaj tipa
FlowLayout podeavanje poravnanja za FlowLayout razdvajanje komponenti za
FlowLayout razmjetaj tipa BorderLayout razmjetaj tipa CardLayout uporaba
CardLayout razmjetaja promjena karata razmjetaj tipa GridLayout
razmjetaj tipa BridBagLayout razmjetaj tipa GridBagConstraints mrea
(grid) za applet Calculator atributi gridx i gridy atributi gridwidth i
gridheight atribut fill atributi ipadx i ipady klasa Insets atribut
anchor atributi weightx i weighty primjer za GridLayout ručno
pozicioniranje komponenti Kontejneri dvije vrste kontejnera paneli
ugnjedeni paneli prozori (windows) okviri (frames) događaji vezani uz
prozore primjer događaja na prozorima kombiniranje appleta i aplikacija
dijalozi metode za dijaloge primjeri dijaloga pisanje podklasa klase
Dialog
·
Deveto
predavanje izbornici, slike i zvukovi
to
je izbornik?
klase izbornika kreiranje izbornika primjer izbornika događaji vezani uz
izbornike izborničke kratice padajući izbornici (popup menus) slike kamo
staviti slike? učitavnje slika crtanje slika uporaba povratne vrijednosti
metoda drawImage() primjer crtanja slika promjena veličine slike
ustanovljavanje veličine slike paket java.awt.image Sučelja ImageProducer,
ImageObserver, ImageConsumer sučelje ImageConsumer čekanje na učitavanje
slike prekrivanje metode imageUpdate() to je zapravo slika? operator
<< - kreiranje slika primjer kreiranja slika metoda getRGB()
pretapanje boja filtriranje slika klasa RGBImageFilter primjer plavog
filtra primjer filtra sivih tonova filtri koji ovise o poloaju filtri
koji ovise o adjungiranim pixelima audio kontinuirana izvedba
·
Deseto
predavanje ulaz i izlaz
Operacije
ulaza i izlaza - to je stream?
klase streamova odakle streamovi dolaze? klasa InputStream čitanje
byteova čitanje vie byteova odjednom prebrojavanje dostupnih byteova
preskakanje byteova markiranje i resetiranje zatvaranje streamova izlazni
streamovi primjer izlaznog streama čitanje iz datoteke primjer čitanja iz
datoteke pisanje u datoteku primjer pisanja u datoteku dodavanje na kraj
datoteke filtriranje streamova filtrirani streamovi bufferirani streamovi
klase podatkovnih streamova klasa PrintStream klasa PushBackInputStream
klasa File konstruktori klase File metode klase File primjeri metoda iz
klase File klasa FileDialog klasa RandomAccessFile sučelje FilenameFilter
klase Reader i Writer klasa Reader klasa Writer klasa InputStreamReader
klasa OutputStreamWriter dostupne kodne stranice klasa FileWriter klasa
FileReader klasa BufferedReader klasa LineNumberReader klasa
BufferedWriter
·
Jedanaesto
predavanje - threadovi
Multitasking
i multithreading to je thread?
- kako Java koristi threadove? klase threadova jednostavni thread
viestruki threadovi imenovanje threadova prioriteti threadova metoda
sleep() sinkronizacija: problem sinkronizacija: nekoliko pokuaja rjeenja -
ključna riječ synchronized sinkroziniranje na objektima primarni thread
grupe threadova threadovi demoni ustupanje kontrole spajanje threadova
sučelje Runnable animacija pravovremenost titranje slike pokretanje i
zaustavljanje animacije viestruke nezavisne animacije
· Cetrnaesto
predavanje Swing
This site was
designed by DRASKO BUDIN----- 02. 04. 2003
All Rights
Reserved.