Kezdőoldal » Számítástechnika » Programozás » Jól értem az absztrakt osztály...

Jól értem az absztrakt osztály lényegét?

Figyelt kérdés

Nem tudom, jól vettem -e ki mikor olvastam róluk, hogy mikor érdemes használni.


Na például:

Istent játszunk egy játékban, ahol bolygókat teremtünk.

A bolygókat példányosítjuk a bolygó osztályból:

saturn = new planet(size,weight);


viszont a bolygó osztály öröklődik az universum osztályból (tehát használja az univerzum törvényszerűségeit, az universum változóit,metódusait), viszont arra nincs szükség , hogy a user példányosítsa az univerzumot.

tehát :

abstract class universum{

}


class planet extends universum {

function __construct(size,weight){

}

}



2013. máj. 8. 04:11
 1/4 anonim ***** válasza:
100%

Ha ragaszkodunk a terminológiához, akkor nem igazán helyes a kijelentésed. Ha absztrakció áll fenn, akkor tudunk olyant, mondani, hogy "az A az egy B" az elég furán hangzik, hogy "az égitest az egy univerzum".

A csillagászati példánál maradva: az absztrakt osztály legyen az, hogy Űrobjektum. Ennek legyen két gyermek osztálya: Űrköd és Égitest. ("Az Űrköd az egy Égitest"). Az Égitest szintén legyen absztrakt és legyen leszármazott osztályai: Csillag, Bolygó, Hold. ("A Csillag egy Égitest")

Az Égitesteknek van mondjuk súlya és mérete. A Csillagoknak ezenkívül van még fényereje mondjuk, ami megkülönbözteti őket a Bolygóktól és a Holdaktól.

2013. máj. 8. 08:10
Hasznos számodra ez a válasz?
 2/4 Pj0tr ***** válasza:

Kis javítás: "A csillagászati példánál maradva: az absztrakt osztály legyen az, hogy Űrobjektum. Ennek legyen két gyermek osztálya: Űrköd és Égitest. ("Az Űrköd az egy Égitest")."


Itt az Űrköd az egy Űrobjektum akart lenni szerintem, nem pedig égitest. :)

2013. máj. 8. 10:19
Hasznos számodra ez a válasz?
 3/4 anonim ***** válasza:
#2: +1, jogos.
2013. máj. 8. 10:30
Hasznos számodra ez a válasz?
 4/4 anonim ***** válasza:

Kicsit pontatlan a példád, de nagyjából jól látod kérdező. Mondok egy talán érthetőbbet. Programozók úgyis a falra másznak már tőle, de szinte biztos, hogy tanulmányaid folyamán találkozni fogsz az autós hasonlatokkal.

Tehát képzeld el, hogy egy olyan programot kell készítened, amely autókkal dolgozik, azonban fontos az autó fajtája (teherautó, személyautó, sportkocsi, stb). Ha a fajtája fontos, akkor egyértelmű, hogy egy "auto" osztály példányosításának nincs értelme, hiszen minden objektum esetén tudnunk kell, hogy az milyen fajta autó. Ezért az "auto" osztály lehet absztrakt, amely alapvető tulajdonságokat ad a leszármazottainak (pl. maximum_speed, number_of_wheels, stb), illetve alapvető metódusokat hagy a származtatott osztályokra (Moving(), Breaking() stb).

2013. máj. 8. 11:17
Hasznos számodra ez a válasz?

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!