Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 3 odgovora
  • 2.514 pregleda

Najnovija ↓

Pitanje u vezi konstruktora 10.04.2014. u 03:50 · pre 153 meseca #1
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 ?
Re: Pitanje u vezi konstruktora 10.04.2014. u 12:45 · pre 153 meseca #2
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.
Re: Pitanje u vezi konstruktora 10.04.2014. u 13:03 · pre 153 meseca #3
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;
    }
}


Potpis
http://i.imgur.com/V3feW.jpg
http://on.wsj.com/H9yjz6 -- India Graduates Millions, but Too Few Are Fit to Hire
Re: Pitanje u vezi konstruktora 10.04.2014. u 13:36 · pre 153 meseca #4
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;
    }    
}


Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme