Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Concetti di base di classi, oggetti e metodi in Java, Appunti di Programmazione Java

Una panoramica delle classi, degli oggetti e delle metodi in Java, con esempi e best practice per la definizione di classi, la creazione di oggetti e l'importazione di altre classi. Vengono inoltre presentati i tipi primitivi e di riferimento e il nuovo API Date and Time di Java 8.

Tipologia: Appunti

2019/2020

Caricato il 14/05/2020

jure-matkovic
jure-matkovic 🇭🇷

4.5

(2)

12 documenti

1 / 17

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Klase i objekti u Javi
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Anteprima parziale del testo

Scarica Concetti di base di classi, oggetti e metodi in Java e più Appunti in PDF di Programmazione Java solo su Docsity!

Klase i objekti u Javi

Sadržaj

◦ Uvod u klase, objekte i metode ◦ Primjer klase „Account” ◦ Konvencija nazivanja klasa, objekata i metoda ◦ Kreiranje objekta klase „Account” ◦ „import” deklaracije ◦ Primitivni i referentni tipovi ◦ Pisanje konstruktora ◦ Novi „Date and Time API” u Javi 8 ◦ Primjer korištenja klase „LocalDateTime” ◦ Objekti i reference ◦ Uspoređivanje objekata

Primjer klase: „Account”

package account; public class Account { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } }

◦ Varijabla „name” predstavlja varijablu instance, jer

svaki račun (instanca/objekt klase „Account”) ima

vlastiti naziv računa

◦ Tip varijable „name” je „String” koji predstavlja niz

znakova

◦ Vrijednost varijable „name” ne mijenja se „izravno”,

već korištenjem metode „setName”, a dohvaća se

pomoću metode „getName”

◦ Elementi označeni modifikatorom „private” mogu

se koristiti samo unutar klase, a oni označeni s

„public” mogu se koristiti i izvan klase

◦ Parametar metode „setName” je lokalni parametar i

može se koristiti samo unutar metode

◦ Za razlikovanje parametra i istoimene varijable

instance koristi se modifikator ključna riječ „this”

Konvencija nazivanja klasa, objekata i

metoda

Nazivi klasa moraju započeti velikim slovom ◦ Svaka klasa mora biti spremljena u istoimenu datoteku s ekstenzijom „.java”Nazivi objekata moraju započeti malim slovom ◦ Izbjegavati hrvatske dijakritičke znakove ◦ Koristi se „CamelCase” princip radi bolje čitljivosti ◦ Npr. ◦ „PrvaLaboratorijskaVjezba” ◦ „brojacStudenata” ◦ Nazivi metoda moraju započeti malim slovom

„import” deklaracije

◦ Ako se unutar neke klase koriste druge klase koje nisu unutar istog paketa,

potrebno ih je dodati u „import” deklaracije

◦ One se nalaze nakon deklaracije paketa, a prije deklaracije klase, npr.

package account; import java.util.Scanner; public class AccountTest {…

◦ Najčešće se dodaju automatski korištenjem „auto complete” kombinacije

tipke („CTRL+Space”) ili korištenjem opcije „Source->Organize Imports”

◦ Ako se ne koristi „import”, potrebno je koristiti puni naziv klase kod

programiranja:

java.util.Scanner unos = new java.util.Scanner(System. in);

Primitivni i referentni tipovi

◦ Java dijeli tipove na primitivne i referentne

◦ Primitivni tipovi su naslijeđeni iz C++-a i to su redom:

◦ int, boolean, byte, char, short, long, float i double

◦ Referentni tipovi podataka su svi oni tipovi koji imaju vlastitu klasu

◦ Svaki primitivni tip ima svoju referentnu „verziju”

◦ Varijable primitivnih tipova mogu sadržavati samo jednu varijablu i automatski

im se dodjeljuje početna vrijednost („0” ili „false”)

◦ Ako se referentni tipovi ne inicijaliziraju, poprimaju vrijednost „null” (ako se

nad takvim objektima pozivaju metode ili dohvaćaju varijable, dogodit će se

„NullPointerException”)

Novi „Date and Time API” u Javi 8

◦ Do Jave 7 koristile su se Date i Calendar klase koje su bile zastarjele i neintuitivne

◦ S vremenom su programeri napisali vlastiti open source library pod nazivom

JodaTime koji je znatno unaprijedio korištenje datuma i vremena u Javi

◦ Java 8 uvodi novi „Date and Time API” po uzoru na JodaTime

◦ Moguće je koristiti klase samo za datum, samo za vrijeme, oboje, dan u tjednu itd.

◦ Klasa „Instant” služi za korištenje trenutnog vremena i korištenja nanosekundi od

početka mjerenja 01.01.1970. godine

◦ Klasa „LocalDate” omogućava dohvat datuma koji uključuje godinu, mjesec i dan

◦ Klasa „LocalTime” omogućava rad s vremenom, a „LocalDateTime” s vremenom i

datumom

Primjer korištenja klase „LocalDateTime”

LocalDateTime localDateTime = LocalDateTime. now(); System. out.println("Trenutni datum: " + localDateTime); System. out.println("Nakon dva tjedna: " + localDateTime.plusWeeks(2)); System. out.println("Formatirani datum: " + localDateTime.format( DateTimeFormatter. ofPattern("dd.MM.yyyy."))); Trenutni datum: 2014 - 10 - 10T12:37:29. Nakon dva tjedna: 2014 - 10 - 24T12:37:29. Formatirani datum: 10.10.2014.

Objekti i reference ( 2 )

◦ Kreiranjem objekta „firstDate”, npr. Korištenjem defaultnog konstruktora, rezervira

se potrebna memorija za spremanje podataka

◦ Primitivni tipovi (npr. „int”) poprimaju vrijednost „0”, a referentni (npr. „String”

poprimaju vrijednost „null”):

Objekti i reference ( 3 )

◦ Dodjeljivanjem konkretnih vrijednosti za članske varijable (npr. pomoću „setter”

metoda) moguće je promijeniti inicijalne vrijednosti:

Uspoređivanje objekata

◦ Objekti se u Javi mogu uspoređivati na dva načina:

◦ Po referencama (često se koristi pogrešno):

if(firstDate == secondDate) {…}

◦ Po vrijednostima, za što je najbolje napisati svoju metodu (ili nadjačati metodu

„equals”):

boolean areTwoDatesEqual(Date f, Date s) { if (f.day == s.day && f.month.equals(s.month) && f.year == s.year) return true; else return false; }

Pitanja?