Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Sta je klasa, a sta objekat i sta je objekat klasi ?

[es] :: Java :: Sta je klasa, a sta objekat i sta je objekat klasi ?

Strane: 1 2

[ Pregleda: 23329 | Odgovora: 29 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

miljannet
Rakita Miljan
Crvenka

Član broj: 321026
Poruke: 56
2001:4c28:4000:721:185:26:18..



+3 Profil

icon Sta je klasa, a sta objekat i sta je objekat klasi ?15.03.2014. u 17:22 - pre 122 meseci
Dosao sam do dela gde ucim klase i objekte.

U knjizi ima objasnjenje sta je klasa, i sta je objekat. Ali mi nije jasno, procitao sam nekoliko puta i jos tacno nisam shvatio sta je klasa a sta je objekat, da li bi neko od vas mogao da mi to kaze svojim recima ? Mnogo bi vam bio zahvalan. :)
 
Odgovor na temu

Burgos
Nemanja Borić
Amazon Web Services
Berlin

Član broj: 12484
Poruke: 1947
212.178.247.*

Sajt: stackoverflow.com/users/1..


+480 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?15.03.2014. u 17:57 - pre 122 meseci
Vrlo uprošćeno, objekat je "stvar" u memoriji koja ima stanje i ponašanje. Npr. objekat sijalica ima svojstvo "Sija/Ne sija" i metode "uključi/isključi" kojima možeš da upravljaš svojstvom svetla. Klasa je opis objekta - dakle, ovo što sam ti ja napisao u prethodnoj rečenici. Pomoću jedne klase je (uglavnom, nije moguće god npr. Singleton klasa, proguglaj) moguće napraviti jedan ili više objekata.

Dakle:


Code:
class Sijalica
{
    private boolean svetli;
    public void ukljuci(){ svetli = true; }
    public void iskljuci(){svetli = false; }
};


je klasa. Nad njom ne možeš vršiti operacije, već nad objektima koji su opisani istom:


Code:
Sijalica a = new Sijalica();
Sijalica b = new Sijalica();

a.ukljuci();
b.ukljuci();


Ovde su a i b reference na objekte koji su opisane klasom Sijalica.

Nadam se da je jasnije.

[Ovu poruku je menjao Burgos dana 15.03.2014. u 19:30 GMT+1]
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4901
*.dynamic.sbb.rs.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?15.03.2014. u 20:11 - pre 122 meseci
Klasa je nacrt/šablon/opis/dogovor kako treba da izgledaju budući objekti napravljeni prema tom nacrtu.

Klasa pod jednim imenom (na primer: BICIKL), grupiše podatke (na primer: TRENUTNA BRZINA, SMER KRETANJA...) i funkcije (na primer: POSTAVI NA BRZINU, VOZI, KOČI, SKREĆI...) od značaja, koje neki budući objekat treba da ima da bi bio od koristi.

Ti zapravo upravljaš objektima (menjaš ih, pozivaš njihove funkcije) za vreme izvršavanja programa (RUN-TIME). O klasi si kreativno razmišljao pre nego što si pokrenuo program (DESIGN-TIME). Mislim da te to buni.


... I taman kad pomisliš da si dobro osmislio naziv klase, njene osobine i funkcije - shvatiš da TRENUTNA BRZINA, SMER KRETANJA, POSTAVI NA BRZINU, VOZI, KOČI, SKREĆI ne opisuju samo BICIKL, već neko imaginarno kretanje, pristutno kod bicikla, auta, aviona, i sl.

To znači da je bolje da daš neko drugo ime klasi (sa onim podacima i funkcijama), na primer MATERIJALNA TAČKA, a da posebno napravis klasu BICIKL, koja će "dobiti" sve što može materijalna tačka, plus ono što stvarno ima SAMO bicikl. To "dobiti" se može ostvariti NASLEĐIVANJEM ili SASTAVLJANJEM, ali to je druga priča.



[Ovu poruku je menjao X Files dana 15.03.2014. u 21:34 GMT+1]
 
Odgovor na temu

Nymeria

Član broj: 317502
Poruke: 75



+84 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?15.03.2014. u 20:43 - pre 122 meseci
Ovo su klase:






A ovo je objekat:

 
Odgovor na temu

Rapaic Rajko
Bgd

Član broj: 4105
Poruke: 810
..ppoe.dyn.broadband.blic.net.



+62 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?16.03.2014. u 08:13 - pre 122 meseci
Pa nije tesko shvatiti korelaciju klase i objekta ;) .

Svi znamo sta je homo sapiens, zar ne? Humanoidna vrsta, sa svim svojim (evolucionim) manama i vrlinama. Tacno se zna koje osobine sapiens ima, a koje nema. Sta mozemo uciniti sa vrstom/klasom HS? Pa, recimo mozemo je (u dalekoj buducnosti) modifikovati, genetski izmeniti, ili (ne daj boze) unistiti (bukvalno, kao da unistavamo nacrt/prototip); a moze i izumreti. To bi u nasoj prici bila KLASA.

A objekti, sta su oni? To su instance/primerci neke klase. U slucaju klase/vrste homo sapiens, objekti smo ti, ja, komsija (tvoj/moj), citaoci foruma itd, itd.

Da li je nesto jasnije sad?

Pozz
 
Odgovor na temu

casperns2
Full Stack Java Web Developer
Novi Sad

Član broj: 288154
Poruke: 227
*.dynamic.sbb.rs.



+45 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?16.03.2014. u 09:01 - pre 122 meseci
Moze li proci ovaj primer... Klasa ti dodje BRAK, ti i tvoja zena ste objekti tog braka. A sve sto radite u braku su metode tog braka (klase).

I onda posle par godina funkcionisanja programa, uradis update i pozoves metodu Brak.newWife()
:)

[Ovu poruku je menjao casperns2 dana 16.03.2014. u 10:29 GMT+1]
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4901
*.dynamic.sbb.rs.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?16.03.2014. u 09:04 - pre 122 meseci
^
Samo ako si u Turskoj.

Kod nas mora prvo:
Wife.Kill(silent)

Šala
 
Odgovor na temu

casperns2
Full Stack Java Web Developer
Novi Sad

Član broj: 288154
Poruke: 227
*.dynamic.sbb.rs.



+45 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?16.03.2014. u 09:20 - pre 122 meseci
Mada se kod tog metoda najcesce javlja greska IllegalStateException (nije dopusteno pozivanje tog metoda), tako da se mora veoma oprezno raditi sa metodama u Braku ...
:)
 
Odgovor na temu

miljannet
Rakita Miljan
Crvenka

Član broj: 321026
Poruke: 56
2001:4c28:4000:721:185:26:18..



+3 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?16.03.2014. u 11:22 - pre 122 meseci
Koliko sam ja do sada skontao, klasa to je kao neki skup pravila i u njoj se kao sto je rekao X Files grupisu podaci, brzina kretanje, ubrzanje i tako to. Onda se napravi objekat. I onda pomocu te klase sto sam ja napisao te podatke, tj neka pravila ja vrsim operacije nad objektom, jel tako ? Hvala svima na odgovorimo, najbolji ste !
 
Odgovor na temu

ventura

Član broj: 32
Poruke: 7781
*.dynamic.sbb.rs.



+6455 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?16.03.2014. u 11:39 - pre 122 meseci
Najlakše da razumeš je ako zamisliš da je klasa isto što i folder, a objekat su fajlovi u tom folderu. Fajlovi mogu biti npr. tekstualni (varijable) ili programi (funkcije).

 
Odgovor na temu

Odin D.
Mlađi referent za automatizaciju
samoupravljanja

Član broj: 37292
Poruke: 2549



+8370 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?16.03.2014. u 12:27 - pre 122 meseci
Mislim da je najopstije poredjenje klase i objekta nesto kao poredjenje ugradjenog tipa i varijable.

Recimo, ugradjeni tipovi su int, char, float,.... a varijable su a, b, c... (ako si ih prethodno kreirao sa
Code:
...
int a;
char b;
float c;
...


Otprilike bi mogao da kazes npr. da je int klasa, a varijabla a objekat klase int.

Ugradjeni tipovi imaju varijable odredjene strukture (8-bitni, 16-bitni, ... komad memorije ciji sadrzaj u bitovima se tumaci na neki nacin) i operacije koje nad njima mozes vrsiti (+, -, *, /, ... itd. zavisi od tipa).

Klase mozes posmatrati kao korisnicke tipove koje sam korisnik definise po svojoj potrebi.
Recimo, ne postoji ugradjen (gotovi) tip imaginarnih brojeva, ali ti mozes napraviti klasu (tj. sam definisati novi tip) koja predstavlja imaginarne brojeve i sam definisati odredjene operacije sa binarnim brojevima.
Znaci, napravio si kao neki novi tip:

Code:
class ImaginarniBroj {
....
}


Dalje, onog momenta kada definises neke konkretne imaginarne brojeve pomocu te svoje klase (tipa):

Code:
ImaginarniBroj a;
ImaginarniBroj b;


ti si ustvari dobio objekte a i b klase ImaginarniBroj.

Znaci, klasa je opis tipa: od cega se varijable tog tipa sastoje i koje se operacije nad njima mogu izvrsavati.
Objekat je konkretna implementacija tog tipa koja postoji u memoriji u toku izvrsavanja programa.

Odnos klase i objekta isto je sto i odnos ugradjenog tipa i varijable, razlika je samo u tome kako ih nazivas:

tip i varijabla za ugradjene tipove:
Code:
int a;


klasa i objekat za korisnicke tipove.
Code:
ImaginarniBroj a;



 
Odgovor na temu

Burgos
Nemanja Borić
Amazon Web Services
Berlin

Član broj: 12484
Poruke: 1947
212.178.234.*

Sajt: stackoverflow.com/users/1..


+480 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?16.03.2014. u 12:34 - pre 122 meseci
Obratite pažnju da u svim primerima korisničkih tipova stvarate samo referencu odgovarajućeg tipa, ali ne i objekat na koji ukazuje (TM Laslo Kraus).
 
Odgovor na temu

Odin D.
Mlađi referent za automatizaciju
samoupravljanja

Član broj: 37292
Poruke: 2549



+8370 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?16.03.2014. u 12:54 - pre 122 meseci
To valjda zavisi od konstruktora.
 
Odgovor na temu

Burgos
Nemanja Borić
Amazon Web Services
Berlin

Član broj: 12484
Poruke: 1947
212.178.234.*

Sajt: stackoverflow.com/users/1..


+480 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?16.03.2014. u 13:45 - pre 122 meseci
Ne - u Javi (za razliku od C++-a), kreiranje objekata korisničke klase je moguće samo sa operatorom new (ako izuzmemo refleksiju, serijalizaciju, itd.).
 
Odgovor na temu

Odin D.
Mlađi referent za automatizaciju
samoupravljanja

Član broj: 37292
Poruke: 2549



+8370 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?16.03.2014. u 13:59 - pre 122 meseci
Nisam obratio paznju da se radi o Javi (a u cije detalje se i ne kontam narocito :)
U svakom slucaju - napomena (zamerka) na mjestu. Fala na pojasnjenju.
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?16.03.2014. u 17:16 - pre 122 meseci
Jbg, dobio si baš dosta odgovora, od kojih su neki baš loši... Ja bih preporučio Odinov i Rajkov odgovor kao ispravne i ne previše zbunjujuće.

Dodao bih samo (opet i opet) da se Java opet pokazuje lošim izborom za učenje OOP, jer bi sasvim logično bilo da je int klasa, a npr. broj 42 instanca te klase (kao što je u nekim drugim OO jezicima), ali u Javi nažalost to nije tako (ali postoji klasa Integer i onda dolazi cela peripetija sa boxovanjem i unboxovanjem od koje se početniku diže kosa na glavi).

Najbolje je da ipak konsultuješ neki udžbenik, koji nije striktno vezan ni za jedan jezik. Ja mogu da preporučim jedan, pomalo zaboravljen, i to na srpskom jeziku: "Saga o OOP" autora Dragana Mašulovića. Možeš ga preuzeti ovde:

http://www.elitesecurity.org/t19637-0
 
Odgovor na temu

negyxo
Aleksandar Perkuchin

Član broj: 29751
Poruke: 898
*.dynamic.isp.telekom.rs.



+171 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?16.03.2014. u 21:41 - pre 122 meseci
^Nisam neki poznavalac Jave, ali mi je boxing i unboxing poznat iz nekih drugih jezika, a koliko vidim u Javi ima istu ulogu. Sa aspetka Type Systema, ne znam kakve veze ima sta sve kompajler radi da bi imao privid OOP-a. Pretpostavljam da bi mogli reci da je problem to sto ne mozes da nasledis primitivne tipove, ali sa druge strane, postoje constrainti unutar jezika koji to omogucavaju i na ostalim klasama (final, seald...).

OK, sve ovo sam napisao samo radi ove opaske:
"Java opet pokazuje lošim izborom za učenje OOP" - posto ne znam bas mnogo jezika koji bi bili nesto pure OOP.
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?16.03.2014. u 21:51 - pre 122 meseci
Pa prosto, int nije klasa (već postoji klasa Integer), a 42 nije objekat. Naravno da kompajler dosta toga radi implicitno, ali svejedno postoji taj opipljiv layer "magije" koji okružuje primitivne tipove koji nije baš intuitivan početniku.

Što se tiče pure OOP, već sam pričao o tome u drugoj temi i ne bih da offtopicujem i ovde. Ima pure OO jezika, čak i mainstream, a opet, ne vidim zašto bi bio problem da se OOP principi uče i na jezicima koji nisu mainstream, ako to omogućava da se materija brže i bolje savlada.
 
Odgovor na temu

negyxo
Aleksandar Perkuchin

Član broj: 29751
Poruke: 898
*.dynamic.isp.telekom.rs.



+171 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?16.03.2014. u 22:03 - pre 122 meseci
Ipak u Javi izgleda postoji ta separacija izmedju int i Integer, i jos par primitivnih tipova. Ne znam koji je razlog odluke dizajnera Jave ali deluje mi totalno bespotrebno da se stvari handluju rucno kada moze i kompajler da se izbori sa tim. Svojevremeno kada sam ucio Javu (kada se pojavila) ostalo mi secanje jedne recenice iz knjige gde je u Javi sve objekat, ali izgleda da bas i nije ili meni lose pamcenje :)

Elem, slazem se da za pocetnike sto bolje da ne moraju da uce posebne slucajeve u pocetku, to ce svakako kasnije saznati zbog prirode posla :D
 
Odgovor na temu

casperns2
Full Stack Java Web Developer
Novi Sad

Član broj: 288154
Poruke: 227
*.opera-mini.net.



+45 Profil

icon Re: Sta je klasa, a sta objekat i sta je objekat klasi ?16.03.2014. u 22:18 - pre 122 meseci
Kada smo kod klasa i objekata, nije mi najasni ovaj deo. Ako imamo klasu Osoba i konstruisemo objekat **public Osoba(String ime, String prezime ) ....

i u nastavku konstruisemo ** public Osoba(final Osoba o) .....

cemu sluzi i kada se upotrebljava definisanje objekta sa final kao u drugom primeru?
 
Odgovor na temu

[es] :: Java :: Sta je klasa, a sta objekat i sta je objekat klasi ?

Strane: 1 2

[ Pregleda: 23329 | Odgovora: 29 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.