U osnovi, svi exceptioni nasljeđuju baznu Exception klasu. Zato ti kod hvatanja Exception ide na dno.
Java programiranje
- poruka: 402
- |
- čitano: 171.416
- |
- moderatori:
Lazarus Long, XXX-Man, vincimus
Pozdrav,
Totalno sam novi u programiranju i trebam pomoc oko nekih zadataka.
Dakle zadatak glasi: Kreirati klasu Klijent unutar paketa hr.java.vjezbe.entitet koja se sastoji od šest varijabli: za OIB, prezime, ime, broj telefona, e-mail adresa i datum rođenja (koji može biti tipa „LocalDate“, a ostale „String“ tipa). Napisati konstruktor za klasu Klijent tako da prima svih šest parametra i sprema ih u privatne varijable klase. Ograničiti pristup varijablama na način da ih je moguće dohvaćati samo korištenjem javnih "get" metoda i spremanje samo korištenjem javnih „set“ metoda.
I ja sam to ucinio ovako:
package hr.java.vjezbe.entitet;
import java.time.LocalDate;
public class Klijent {
public static void main(String[] args) {
Klijent klijent = new Klijent();
}
private class klijent {
private String OIB;
private String prezime;
private String ime;
private String brojTelefona;
private String email;
private LocalDate datumRodenja;
public String getOIB() {
return OIB;
}
public void setOIB(String oIB) {
OIB = oIB;
}
public String getPrezime() {
return prezime;
}
public void setPrezime(String prezime) {
this.prezime = prezime;
}
public String getIme() {
return ime;
}
public void setIme(String ime) {
this.ime = ime;
}
public String getBrojTelefona() {
return brojTelefona;
}
public void setBrojTelefona(String brojTelefona) {
this.brojTelefona = brojTelefona;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public LocalDate getDatumRodenja() {
return datumRodenja;
}
public void setDatumRodenja(LocalDate datumRodenja) {
this.datumRodenja = datumRodenja;
}
}
}
I iskreno nemam pojma dali je dobro...
A dalje zadatak kaze: Kreirati klasu Komunikacija unutar paketa hr.java.vjezbe.entitet koja se sastoji od pet varijabli: objekta klase Klijent, objekta klase Zaposlenik, oznake vrste komunikacije, sadržaj komunikacije (posljednje dvije varijable moraju biti tipa „String“) i vrijeme komunikacije (koristiti „LocalDateTime“ tip podatka). Napisati konstruktor za klasu Komunikacija tako da prima svih pet parametra i sprema ih u privatne varijable klase. Ograničiti pristup varijablama na način da ih je moguće dohvaćati samo korištenjem javnih "get" metoda i spremanje samo korištenjem javnih „set“ metoda.
i taj dio sam krenuo ovako:
package hr.java.vjezbe.entitet;
import java.time.LocalDateTime;
public class Komunikacija {
public static void main(String[] args) {
Komunikacija komunikacija = new Komunikacija();
}
private class komunikacija {
private Klijent;
private Zaposlenik;
private String vrstaKomunikacije;
private String sadrzajKomunikacije;
private LocalDateTime vrijemeKomunikacije;
}
}
ali nemam pojma na koji nacin objekte iz prethodne klase staviti u ovu klasu kao varijablu...
agnostes čitaj što ti zadatak kaže "Kreirati klasu Klijent unutar paketa hr.java.vjezbe.entitet koja se sastoji od šest varijabli". Gdje piše da ta klasa mora imati main metodu ? Nigdje. Radi onako kako piše. Nazive klasa uvijek piši velikim početnim slovom.
Znači nakon što kreiraš java projekt, kreiraj paket naziva hr.java.vjezbe.entitet i unutar tog paketa klasu Klijent. U klasi treba napraviti sljedeće: "koja se sastoji od šest varijabli: za OIB, prezime, ime, broj telefona, e-mail adresa i datum rođenja (koji može biti tipa „LocalDate“, a ostale „String“ tipa). Napisati konstruktor za klasu Klijent tako da prima svih šest parametra i sprema ih u privatne varijable klase. Ograničiti pristup varijablama na način da ih je moguće dohvaćati samo korištenjem javnih "get" metoda i spremanje samo korištenjem javnih „set“ metoda.". Ok to si koliko toliko dobro napravio ali ... ne valja :D
Više manje klasa treba izgledati ovako: http://pastebin.com/2SaGcXzv
Eto za ovu drugu klasu probaj sam. Ako ne znaš što je konstruktor i ostalo... googlaj ima materijala i na hrvatskom (iako je to ne znam nekako ... čudno zvuči)
Hvala ti na pomoći.
Što se tiće main metode, to sam stavio jer sam u svim materijalima i tutorialima nasao da svaki java program mora imati main metodu.
Ne znam što je konstruktor, i citao jesam (ne mora biti na hrv.) ali i dalje nisam skuzio bit konstruktora i kako funkcionira niti kako se pise.
Da budem iskren, ovo koda sto sam napisao sam radio 4 faking sata, onda mozes misliti kakav sam noob :D ali trudim se i pokusati cu to skuziti. Jos jednom, hvala ti na pomoci :)
I ako imas jos kakvih savjeta, slobodno podijeli jer dobro ce mi doci :)
Hvala ti na pomoći.
Što se tiće main metode, to sam stavio jer sam u svim materijalima i tutorialima nasao da svaki java program mora imati main metodu.
Ne znam što je konstruktor, i citao jesam (ne mora biti na hrv.) ali i dalje nisam skuzio bit konstruktora i kako funkcionira niti kako se pise.
Da budem iskren, ovo koda sto sam napisao sam radio 4 faking sata, onda mozes misliti kakav sam noob :D ali trudim se i pokusati cu to skuziti. Jos jednom, hvala ti na pomoci :)
I ako imas jos kakvih savjeta, slobodno podijeli jer dobro ce mi doci :)
Kad kreiras novi ovjekt:
Klijent x = new Klijent();
ovo boldano poziva konstruktor i kreira novi objekt tipa Klijent i pointer na njega je spremljen u varijablu x
Konstruktor kreiras tako da unutar klase napises:
public class Klijent{
public Klijent(){
//ako ne kreiras konstruktor, ovo je defaultni koji se poziva
}
}
E sad konstruktori se kreiraju kad klasa(odnosno objekt) sadrzi svoje varijable npr:
public class Klijent{
private String ime;
private String prezime;
public Klijent(String ime, String prezime){
this.ime = ime;
this.prezime = prezime;
}
}
Naravno, ti to mozes izvesti i preko settera, ali ovo je puno elegantnije rjesenje.
Jos 1 tip, u eclipse stisnes desni klik->source->create Constructor(tako nesto)
i onda samo oznacis koje varijable zelis definirati unutar konstruktora i on ce ti ga generirati sam.
Pogledaj ovo, trebalo bi biti jasnije:
Pozdrav,
Totalno sam novi u programiranju i trebam pomoc oko nekih zadataka.
Dakle zadatak glasi: Kreirati klasu Klijent unutar paketa hr.java.vjezbe.entitet koja se sastoji od šest varijabli: za OIB, prezime, ime, broj telefona, e-mail adresa i datum rođenja (koji može biti tipa „LocalDate“, a ostale „String“ tipa). Napisati konstruktor za klasu Klijent tako da prima svih šest parametra i sprema ih u privatne varijable klase. Ograničiti pristup varijablama na način da ih je moguće dohvaćati samo korištenjem javnih "get" metoda i spremanje samo korištenjem javnih „set“ metoda.
I ja sam to ucinio ovako:
package hr.java.vjezbe.entitet;
import java.time.LocalDate;
public class Klijent {
public static void main(String[] args) {
Klijent klijent = new Klijent();
}
private class klijent {
private String OIB;
private String prezime;
private String ime;
private String brojTelefona;
private String email;
private LocalDate datumRodenja;
public String getOIB() {
return OIB;
}
public void setOIB(String oIB) {
OIB = oIB;
}
public String getPrezime() {
return prezime;
}
public void setPrezime(String prezime) {
this.prezime = prezime;
}
public String getIme() {
return ime;
}
public void setIme(String ime) {
this.ime = ime;
}
public String getBrojTelefona() {
return brojTelefona;
}
public void setBrojTelefona(String brojTelefona) {
this.brojTelefona = brojTelefona;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public LocalDate getDatumRodenja() {
return datumRodenja;
}
public void setDatumRodenja(LocalDate datumRodenja) {
this.datumRodenja = datumRodenja;
}
}
}
I iskreno nemam pojma dali je dobro...
A dalje zadatak kaze: Kreirati klasu Komunikacija unutar paketa hr.java.vjezbe.entitet koja se sastoji od pet varijabli: objekta klase Klijent, objekta klase Zaposlenik, oznake vrste komunikacije, sadržaj komunikacije (posljednje dvije varijable moraju biti tipa „String“) i vrijeme komunikacije (koristiti „LocalDateTime“ tip podatka). Napisati konstruktor za klasu Komunikacija tako da prima svih pet parametra i sprema ih u privatne varijable klase. Ograničiti pristup varijablama na način da ih je moguće dohvaćati samo korištenjem javnih "get" metoda i spremanje samo korištenjem javnih „set“ metoda.
i taj dio sam krenuo ovako:
package hr.java.vjezbe.entitet;
import java.time.LocalDateTime;
public class Komunikacija {
public static void main(String[] args) {
Komunikacija komunikacija = new Komunikacija();
}
private class komunikacija {
private Klijent;
private Zaposlenik;
private String vrstaKomunikacije;
private String sadrzajKomunikacije;
private LocalDateTime vrijemeKomunikacije;
}
}
ali nemam pojma na koji nacin objekte iz prethodne klase staviti u ovu klasu kao varijablu...
ti si ovdje definirao privatnu klasu u public klasi. nemoj to raditi, već ti svaka datoteka treba sadržavati jednu public klasu. postoje i inner (unutarnje) klase, ali to je već dosta napredno, tako da to za sada izbjegavaj.
napravi si jednu klasu Klijent, već je netko napravio kako bi to trebalo izgledati.
zatim druga klasa Komunikacija:
public class Komunikacija {
private Klijent k;
private Zaposlenik z;
private String vrstaKomunikacije;
private String sadrzajKomunikacije;
private LocalDateTime vrijemeKomunikacije;
public Komunikacija(Klijent kli, Zaposlenik zap........){//ovako možeš ubacivati druge objekte
this.k=kli;
this.z=zap;
........
}
//zatim get i set metode napravis kao u prvom zadatku
}
u cijelom programu treba postojati samo jedna static metoda main, pa je najbolje napraviti novu klasu koja ce vrtiti recimo samo main metodu i to ti je kao ulazna tocka u program.
Pokusavam malo shvatiti kako se rade igrice, i zapeo sam na timeru i na frame-ovima.
Napravio sam jedan algoritam, u kojem zelim ograniciti da se stalno vrti 60 frame-ova po sekundi. Samo me zanimalo da li je to u redu nacin,odnosno da vidim da li sam dobro shvatio uopce tu cijelu koncepciju loopanja.
private static void myloop(){
long start=System.nanoTime();--------------------pocetno vrijeme
double amountOfTicks=60.0;
double ns=1000000000.0/amountOfTicks; ----------------vremenska razlika izmedu frame-ova
double delta=0;
int frame=0;
long timer=System.currentTimeMillis();
while(true){
long now=System.nanoTime();
delta+=(now-start)/ns; ------------------razlika izmedu vremena kada sam poceo i "sada" i to dijelim ns.
start=now;
if (delta<1){continue;} ----------------------sada samo cekam dok mi delta ne bude jedan odnosno cekam da delta dode do ns(vremenske razlike izmedu frame-ova). Kao proslo je dosta vremena, stvori novu sliku
++frame;
delta=0;
long nowtimer=System.currentTimeMillis();
if ((nowtimer-timer)>1000){
timer+=1000;
put("FPS:"+frame);
frame=0;
}
}
}
Imam pitanje sto se tice citanja iz fajlova u javi..
Da li postoji nesto kao formatirano citanje fajlova u c-u npr. fscanf("%d %d, (%lf,%lf)) itd...
Pozdrav,
oko 6 mjeseci ucim Java programiranje i zanima me JavaFx. Naime neki mi govore da mi nije potrebna JavaFx odnosno da je mogu preći ali da nema potrebe da previše zastajem na njoj.. I ako ima neko ko radi za neku firmu može li mi objasniti posao Java programera,šta mi je bitno, znam osnove, trebam počet učiti Git & Version control, sam učim tako da zapravo i ne znam gdje idem
Kako u praksi to funkcionira? Da li se zovu metode u konstruktoru (i u kojim slucajevima?)
http://bookvar.co/course-details/java/422
Isplativo? Radim hardcore C trenutno, a uskoro bi mogao preci na C++ i C#. Java je vrlo bliska, iako nadasve laksa, ne znam valja li proci brzi tecaj cisto da shvatim pojmove klasa i sve ostalo bitno iz oop-a.
To je cca 150 nase valute. Proso sam ovaj for free. Tip ide od samog pocetka, cudan je za slusat, ima govornih mana, al usko se drzi iskljucivo tematike koju obraduje i to mi se svidja.
uz toliko besplatnog sadrzaja na internetu, ja sam apsolutno protiv ikakvog placanja tecaja i knjiga, pogotovo za tako neke osnovne stvari. neces ti biti nista pametniji sto si 22 sata slusao nekog predavaca, nego da si recimo 50 sati radio samostalno, pogledao nekoliko videa na youtubu i procitao neku besplatnu knjigu u kojoj se također ide sve ispocetka.
i ne vidim razlog da ucis i c++ i c# i javu. koncept objektnog programiranja je isti, samo su razlicite sintakse i detalji, a to lako pohvatas. tako da uzmi jedan jezik s kojim se zelis nesto raditi i onda uci taj jezik. ako zelis uciti sve jezike, onda upisi faks.
Pozdrav,
oko 6 mjeseci ucim Java programiranje i zanima me JavaFx. Naime neki mi govore da mi nije potrebna JavaFx odnosno da je mogu preći ali da nema potrebe da previše zastajem na njoj.. I ako ima neko ko radi za neku firmu može li mi objasniti posao Java programera,šta mi je bitno, znam osnove, trebam počet učiti Git & Version control, sam učim tako da zapravo i ne znam gdje idem
Nauci Git & Version control, SOLID (single responsibility, open-closed, Liskov substitution, interface segregation and dependency inversion) i design patterne.
JavaFX bi u skorijoj buducnosti trebala zamijeniti Swing. Pošto je swing star nekih 20 godina većina projekata ga i dalje upotrebljava. Ako počneš raditi u nekoj firmi koja koristi javu velika je vjerovatnoća da ćeš koristiti swing.
Pošto je trend zadnjih godina dodavanje podrške za neke koncepte iz funkcionalnih jezika onda bi bilo dobro da naucis neke osnove. U tome ti može pomoći Haskell iako ga nikad nećeš koristiti. Ako ti je haskell pretežak onda probaj sa Scalom.
Kako u praksi to funkcionira? Da li se zovu metode u konstruktoru (i u kojim slucajevima?)
Ovdje imaš objašnjeno
http://stackoverflow.com/questions/18348797/why-is-it-considered-bad-practice-to-call-a-method-from-within-a-constructor
Cuj, zahvaljujem na sugestiji, doduse, razumijem i sam te stvari. Primarna je tranzicija na c++/c# jer to kroz studij ucim preko kraja p2; algoritama & struktura podataka + pure oop u naredim semestrima. To je samo baza a kasnije nadogradnja na sve moguce stvari koje se ticu racunarstva pa i elteh.! Mislio sam negdje uhvatit i praksu bio to i sql; baze podataka (takav mi je environment :D), ak ne onda samostalno na bilo koju stranu. Trenutno idem od pocetka i radim na c logici. Kroz par mjeseci nadam se prijeci potpuno na oop i dobit malo siru sliku o programiranju iako, ja se nadam, kao inzinjeru nije problem ulazit opcenito u blio koju struku; ne mogu reci da se trenutno bavim samo 'kodovima', a godinama sam se susreto sa basic hardverom te vn, sn sustavima.
Zabrijo sam kroz taj kurs i za par dana uhvatit podloge jave koja je kudikamo laksa; garbage collection; (ne)brige oko memorije i korumpiranja bla. Reko, mozda je netko sam prosao isti jer sam to ovdje i nasao. Proci cu vjv sve sto se moze proci, veci dio na faksu, ostalo solo.
Hvala vam puno za odgovor, stvarno sam početnik, ne znam niti jednog programera da bi im se obratio, pa moram ovako
Izvini nisam skontao zbog čega mi je potreban Haskell, bio sam na kursu u Gračanici i nisu ga spominjali i da li bi mi preporučio drugi programski jezik poslije Jave, vidim da mnogi od njih traže i mySql, tu imam knjigu, PHP i mySql
Hvala vam puno za odgovor, stvarno sam početnik, ne znam niti jednog programera da bi im se obratio, pa moram ovako
Izvini nisam skontao zbog čega mi je potreban Haskell, bio sam na kursu u Gračanici i nisu ga spominjali i da li bi mi preporučio drugi programski jezik poslije Jave, vidim da mnogi od njih traže i mySql, tu imam knjigu, PHP i mySql
Haskell je funkcijski programski jezik koji zahtijeva drugačiji način "razmišljanja". Računanje se tretira kao evaluacija matematičkih funkcija, samim time nema mutabilnih podataka što ga čini idealnim za paralelno programiranje i još neke primjene. Uglavnom sve navedeno možeš uraditi i u javi ali na teži način. Kada se usavršiš u javi i kad ti dosadi programiranje onda probaj haskell :D
PHP i mySql nauči ako se želiš baviti web programiranjem. Javu ako želiš razvijati Android aplikacije.
Java je isto u web-u dosta dobra i korištena... ne samo android
pozdrav svima! procitao sam knjigu iz jave, sad me zanima imate li neku zbirku zadataka u pdfu da mogu vjezbati?
pozdrav svima! procitao sam knjigu iz jave, sad me zanima imate li neku zbirku zadataka u pdfu da mogu vjezbati?
http://www.pythonchallenge.com/
Dobiješ sliku iz koje zakljucis sta treba uraditi. Napises program. Odgovor stavis kao dio url-a.
Umjesto nule upises svoj odgovor i dobijes sljedeci zadatak: http://www.pythonchallenge.com/pc/def/0.html
https://www.hackerrank.com/domains/java/java-introduction
Osnove
Osnove
Za ucenje matematike i programiranja
Da li je moguce da inputstream od socketa, znaci stream koji sam dobio pozivom metode socket.getInputStream(), tako reci moze zadrazti podatke i kada ja resetiram program. Ono sto mi se dogada da pokusavam s uredaja na racunalo poslati pjesmu,prije toga saljem ime pjesme. Uglavnom prije nego sto "download" zavrsi,ugasim program na racunalu i ponovo ga upalim. Nakon sto ga upalim na mobitelu se pokusavam ponovo konektirati na racunalo i vec tada je stream pun i kaze da ima bytove za ucitati.
Moje pitanje je: Ostaju li negdje spremljeni ti podaci koji se nisu uspjeli dokraja poslati na racunalo,pa da onda kada ponovo otvorim socket ti podaci se proslijede?
Želim napraviti program koji bi simulirao terminal. Imam nekoliko ideja za sam dizajn programa, ali me zanima postoje li već neki slični projekti da mogu vidjeti kako su oni to radili.
Prijedlozi?
imas konstruktor JButton(String text) ili preko metode b.setText();
Dali bi netko znao kako odfokusirati TextField nakon šta sam ručno obuzeo text iz njega i CTLR+C napravio. Želim da mi automatski nakon toga prvi sljedeći mouse click TextField bude odfokusiran, da ne treban manualno sastrane kliknuti da bih mogao nastaviti.
Itko?
Moram napraviti igru za 2-4 igrača za projekt iz Jave te sam izabrala Battleship. Da li netko ima ideju kako bih mogla koristiti Thread class ili sinkronizaciju thread-ova u igri? Mislila sam napraviti tako da imam 2 timer-a pa kada jedan igrači postavi svoje brodove i istekne mu vrijeme da se onda thread prebaci na drugog igrača.
Pozdrav !
Krenuo sam sa ucenjem Jave preko YT-a i sada zelim preci na neku knjigu.
Uvjet je da je knjiga na hrvatskom ili srpskom sto siguran sam skracuje izbor.
Naisao sam na knjigu Marka Čupića i prevedenu verziju Thinking in Java , zanima me mišljenje ako se neko vec susreo sa ovim knjigama i bilo bi dobro ako mi moze preporuciti jos neku knjigu.
Svako dobro svima.
Pozdrav !
Krenuo sam sa ucenjem Jave preko YT-a i sada zelim preci na neku knjigu.
Uvjet je da je knjiga na hrvatskom ili srpskom sto siguran sam skracuje izbor.
Naisao sam na knjigu Marka Čupića i prevedenu verziju Thinking in Java , zanima me mišljenje ako se neko vec susreo sa ovim knjigama i bilo bi dobro ako mi moze preporuciti jos neku knjigu.
Svako dobro svima.
Čupić ti je program za dodatni kolegij jave na FER-u poznatiji pod nazivom Čupičeva java.
Svakako preporuka.
@Olson:)
Olsone, kao i meni drag forumaš CrpNk3r mogu toplo preporučiti knjige od legende Čupića, odličnog kompjuteraša, te još boljeg čovjeka. Radio sam po njegovoj knjizi neke stvari, dok sam još brijao na Džavu, al' kako prva ljubav zaborava nema(C-jezik), zadržao sam se na C-olikim jezicima(C++, te C#-Okay, to nisu isti jezici kao i C, al' vuku porijeklo od njega...). Al' tko zna gdje te karijera može odvesti, možda baš na Javu....(pa, tako na poslu delam kroz TOAD u vezi izvlačenja podataka iz baze....)
Inače, mogu ti preporučiti, osim ove legendarne Čupićeve knjige o Javi, još jednu knjigu: Yakov Fain: "Programiranje Java". Nju sam konzultirao, te mogu reći da je solidna knjiga, al' mi je malo nespretan hrvatski prijevod. Postoji, dakako i u engleskom originalu.
Ak' želiš, pukni bilo kakav email na PP, pa ti pošaljem o Javi neke .pdf koje posjedujem.(čim stignem, dakako...)
BTW, Čupićevu knjigu vrijedi pročitati i konzultirati, čak i ako ne brijemo po Javi, a želiš da ti programiranje bude poziv. Samo se javiti Marko, kako veli na početku svoje knjige. Ništa vas ne košta.
Samo rokaj, zanimljiv je taj svijet developanja....
Isplati li se kupiti ovu knjigu dok je na popustu?