Kezdőoldal » Számítástechnika » Programozás » Mi az a konstruktor C#-ban es...

Mi az a konstruktor C#-ban es hogyan kell hasznalni?

Figyelt kérdés
Erthetoen elmagyarazna valaki egy peldan keresztul? Nagyon megkoszonnem! Neten nem ertem teljesen a leirasokat.. tulsagosan szakzsargon es logikailag nem ertem. Holnap dogat irunk... egy feladatot kell megoldani es kell peldanyositani is meg konstruktorokat hasznalni... legyszives segitsetek!

2015. jún. 7. 17:55
1 2 3
 11/27 anonim ***** válasza:
static mondjuk pont lehet.
2015. jún. 7. 20:47
Hasznos számodra ez a válasz?
 12/27 A kérdező kommentje:

Íme egy példa... Félig meddig értem, de mégse...

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;


namespace _0518fel1csop2

{

class Szemely

{

static int magassagKul = 10;

static int eletkorKul = 5;

string nev;

int magassag;

int kor;

public Szemely(string _nev, int _magassag, int _kor)

{

nev = _nev;

magassag = _magassag;

kor = _kor;

}

public Szemely(string _nev, int _kor)

{

nev = _nev;

kor = _kor;

magassag = 175;

}

static public int getMagassagKul()

{

return magassagKul;

}

static public void setMagassagKul(int _magassagKul)

{

magassagKul = _magassagKul;

}

static public int getEletkorKul()

{

return eletkorKul;

}

static public void setEletkorKul(int _eletkorKul)

{

eletkorKul = _eletkorKul;

}

public string getNev()

{

return nev;

}

public void setNev(string _nev)

{

nev = _nev;

}

public int getMagassag()

{

return magassag;

}

public void setMagassag(int _magassag)

{

magassag = _magassag;

}

public int getKor()

{

return kor;

}

public void setKor(int _kor)

{

kor = _kor;

}

}

}


A Public szemelyt miért írja a legelején egymás után kétszer kb, azzal a különbséggel, hogy a magassag=175?

2015. jún. 7. 22:58
 13/27 anonim ***** válasza:
Mert a második konstruktorban nem adod meg a magasságot így a 175 -re állítja.
2015. jún. 7. 23:03
Hasznos számodra ez a válasz?
 14/27 A kérdező kommentje:
Nem értem az egészet... Minek kell még egyszer megadni az adatokat? Nem értem mire jó ez az egész, és logikailag hogyan működik.
2015. jún. 7. 23:09
 15/27 A kérdező kommentje:
Azért gondoltam, hátha valaki ír egy gyenge példát, amit nem tűzdel tele idegen szavakkal, vagy a szavakat megmagyarázza érthetően, és hogy pontosan mi miért történik...
2015. jún. 7. 23:11
 16/27 anonim ***** válasza:
A belinkelt könyvben hol tartasz?
2015. jún. 7. 23:55
Hasznos számodra ez a válasz?
 17/27 anonim ***** válasza:

Az objektumorientált program hasonló a mi világunkhoz. Ugye, ha akarunk egy új tárgyat csinálni a mi világunkban, akkor nem egyből nekikezdünk szabdalni mindenféle anyagot, hanem megtervezzük, hogyan is kell működnie, stb. Ez a terv (=osztály) egy papírlap, ami csak leírja, mit is kell a tárgynak tudnia, nem a ténylegesen használható, kész tárgy. A világunkban minden egyes tárgynak le kell írni, hogyan lehet elkészíteni/legyártani. Ezt a elkészítési/gyártási folyamatot leíró "valamit" (konkrétan metódust) nevezzük konstruktornak. Minden konstruktornak három dolgot kell megcsinálnia:

- helyet kell teremteni a világban a tárgynak (ami a gépen a memória lefoglalásával jár)

- át kell másolni a tervben leírt tulajdonságokat és viselkedéseket a lefoglalt helyre

- kezdőállapotba kell hozni a tárgyat (magyarul a tulajdonságok milyen értékkel rendelkezzenek a tárgy létrehozása után)

Az első kettő általában az object-ből örökölt konstruktor feladata, a programozó valójában csak az utolsó lépést írja le.

2015. jún. 7. 23:55
Hasznos számodra ez a válasz?
 18/27 A kérdező kommentje:
Koszonom! Igy ertheto! :) Mar csak az nem vilagos hogy pl a magassag amikor 175 erteket kapott, minek lett ujra leirva az a ket adat ami mar elotte is oda volt irva? Arra rajottem hogy az a static aminek pl van a legelejen erteke. De bem ertem mi alapjan irom be hogy pl public int kecske _kecske... aztan megint public int _kecske. Void se tudom mikor kell mikor nem.
2015. jún. 8. 00:26
 19/27 anonim ***** válasza:
A világban vannak olyan jellemzők, amik egy konkrét tárgyra vonatkozik. Például az egyik szék piros, míg egy másik szék zöld. Ugyanakkor vannak olyan tulajdonságok és viselkedések, amelyek egyik konkrét tárgyra sem vonatkoznak, hanem általánosságban beszélnek róluk. Ezek az ún. osztályszintű, más néven statikus tagok. Székek esetében ilyen statikus tulajdonság lehet az, hogy hány szék van a világban.
2015. jún. 8. 01:12
Hasznos számodra ez a válasz?
 20/27 anonim ***** válasza:

A metódusoknak két fajtája van:

- függvény

- eljárás


Az eljárás egy cselekvéssorozatot ír le, hogy hogyan lehet egy cselekvést elvégezni. Ennek végrehajtása során egy új állapot áll elő. Ha a napirendedet nézzük, az evés egy cselekvéssorozat, amely leírja, hogyan ehetsz meg valamit, amely azt az állapotot idézi elő, hogy már nem vagy éhes.


A függvény egy számítási módot ír le, hogy hogyan lehet valamilyen új értéket vagy tárgyat létrehozni (utóbbi csak az OOP-ben). Ennek a számítási módnak a végrehajtásakor egy eredmény jön létre, amelyet te később felhasználhatsz.


Az eljárás - mivel nem képez eredményt - mindig void-os a C-szerű nyelvekben, míg a függvény esetében - mivel eredményt állít elő - mindig meg kell határozni az eredmény típusát (pl. int, stb.).

2015. jún. 8. 01:20
Hasznos számodra ez a válasz?
1 2 3

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!