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

Pitanje u vezi konstruktora

[es] :: Java :: Pitanje u vezi konstruktora

[ Pregleda: 1693 | Odgovora: 3 ] > 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 Pitanje u vezi konstruktora10.04.2014. u 02:50 - pre 122 meseci
Pozdrav,
sada sam radio zadatak sa konstruktorima i imam jedno malo pitanje u vezi njih.
Koliko sam ja shvatio. Konstruktor bukvalno sluzi samo da inicijalizuje vrednosti objekta. I ako ga mi ne deklarisemo java ce ga sama dodeliti
kada napravimo objekat ? I to je to sve sto treba da znam u vezi konstruktora ?

primer:
Code:

package Klase;

class Kutija10
{
    double sirina;
    double dubina;
    double visina;
    
    Kutija10()
    {
        sirina=10;
        dubina=15;
        visina=20;
    }
}




public class PrimerZaEs 
{
    public static void main(String args[])
    {
        Kutija10 novaKutija = new Kutija10();
    }
}


Code:

package Klase;

class Kutija10
{
    double sirina;
    double dubina;
    double visina;
}




public class PrimerZaEs 
{
    public static void main(String args[])
    {
        Kutija10 novaKutija = new Kutija10();
        novaKutija.sirina=10;
        novaKutija.dubina=15;
        novaKutija.visina=20;
    }
}



Znaci ovo je skroz isto, samo sto sam ja u prvom primeru sam napravio konstruktor i dodelio vrednosti objektu, a u drugom primeru
java je sama napravila konstruktor ? tj sama ga je dodelila ?
 
Odgovor na temu

Rusi
Novi Sad

Član broj: 64282
Poruke: 292



+5 Profil

icon Re: Pitanje u vezi konstruktora10.04.2014. u 11:45 - pre 122 meseci
Sa konstruktorom definises koje su to pocetne (da kazemo default) vrednosti objekta klase. Uzmimo npr. objekat klase lampa koju cemo definisati da bude iskljucena i ispravna. Zatim napisemo konstruktor u kome definisemo njeno pocetno stanje.

Code (java):
public Lampa {
    ukljucena = false;
    ispravna = true;
}
 

Sada svaki objekat klase Lampa, kada se napravi, biti iskljucena i ispravna.

Code (java):
Lampa la = new Lampa();


Lampa la je sada iskljucena i ispravna.
 
Odgovor na temu

AMD guy
Miroslav
.NET developer

Član broj: 128930
Poruke: 1007

Sajt: www.its.edu.rs


+38 Profil

icon Re: Pitanje u vezi konstruktora10.04.2014. u 12:03 - pre 122 meseci
Konstruktor ti sluzi za kreiranje objekata, bilo pomocu default konstruktora koji je Rusi opisao ili ako zelus da ti dodelis pocetne vrednosti trebace ti ovo

Code (java):
class Kutija10
{
    double sirina;
    double dubina;
    double visina;
   
    Kutija10(double Sirina, double Dubina, doube Visina)
    {
        sirina = Sirina;
        dubina = Dubina;
        visina = Visina;
    }
}



http://i.imgur.com/V3feW.jpg
http://on.wsj.com/H9yjz6 -- India Graduates Millions, but Too Few Are Fit to Hire
 
Odgovor na temu

FooLControL
Serbia

Član broj: 168531
Poruke: 74
*.dynamic.isp.telekom.rs.



+8 Profil

icon Re: Pitanje u vezi konstruktora10.04.2014. u 12:36 - pre 122 meseci
Citat:
miljannet:
Koliko sam ja shvatio. Konstruktor bukvalno sluzi samo da inicijalizuje vrednosti objekta. I ako ga mi ne deklarisemo java ce ga sama dodeliti


Konstruktor sluzi sa kreiranje objekta date klase (instance). U kom ti mozes da inicijalizujes njegove vrednosti (atribute).

Ti si u svom prvom primeru napravio konstruktor koji ce incijalizovati vrednosti objekta, dok u drugom nisi, tj. pozvao si podrazumevani (default) konstruktor.

Podrazumevani (default) konstruktor postavlja vrednosti objekata na podrazumevane (default) vrednosti, i on se ne navodi zato se zove podrazumevani.

Tako je vazno znati, da se podrazumevani konstruktor ne moze pozvati ako vec ima neki definisani konstruktor u klasi.

Znaci ovo su tri ista primera:

Code:
//podrazumevani konstruktor ne navodi se
//kada se pozove postavice vrednost straniceA na 0 
public class Kvadrat {
    
    int stranicaA;    
}


Code:
//defininisani konstruktor bez parametara
//kada se pozove postavice vrednost straniceA na 0
public class Kvadrat {
    
    int stranicaA;
    
    public Kvadrat(){}    
}


Code:
//defininisani konstruktor bez parametara
//kada se pozove postavice vrednost straniceA na 0 u ovom slucaju
//ili na neku drugu vrednost ako zelimo
public class Kvadrat {
    
    int stranicaA;
    
    public Kvadrat(){
        stranicaA = 0;
    }    
}


 
Odgovor na temu

[es] :: Java :: Pitanje u vezi konstruktora

[ Pregleda: 1693 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

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