Hirdetés
Új hozzászólás Aktív témák
-
Lacces
őstag
Picit továbbhaladtam a példában. Elég érdekes amit írt, de nekem kérdőjel maradt benne.
Van ez a két sor:
kk = vv;
System.out.println(kk.plusz(new Valos(9)).toString());Az első sor még ok, hogy itt dinamikus típus lesz, Komplex deklarált, és valós.
Viszont a második sornál a magyarázatot a példában nem értettem meg, hogy akkor most mi va...
kk dinamikus típus lesz. és meghívjuk a plusz metódust, amelynek a paramétere valós.
public Komplex plusz(Komplex k){ // Komplex osztályban
System.out.println("K + K: "+toString() +" + " + k.toString());
return new Komplex(re+k.re, im+k.im);
}
public Komplex plusz(Komplex k){ // Valos osztályban
System.out.println("V + K: "+toString() + " + " + k.toString());
return new Komplex(re+k.re, k.im);
[I]Az eredmény egyik sora: V + K: (7.8) + (9.0) [/I]lesz
}
public Valos plusz(Valos v){ // Valos osztályban
System.out.println("V + V "+toString()+ " + " + v.toString());
return new Valos(re+v.re);A magyarázat olyan, hogy dinamikus kötést alkalmaz. Ez rendben van, de miért?
1.Azért mert kk Komplex deklarált, de Valos Konstruktor hívás van, ezért egyből a Valos osztályból keresi hozzá a plusz metódust?
2. Vagy azért, mert Komplex osztályban nincs plusz() metódus amelynek a paraméter Valos szám!, és ezért a gyermek osztályban keres hozzá!Most ilyenkor egyből megy a deklarált osztályba, vagy abba az osztályba megy a fordító, ahol megvan híva az objektum konstruktora?
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- BESZÁMÍTÁS! ASRock B450M R5 3500X 16GB DDR4 512GB SSD RX 5700 XT 8GB Zalman N4 ADATA 600W
- Bomba ár! Asus X540YA - AMD A8 I 8GB I 512SSD I Radeon I 15,6" FHD I Cam I W10 I Garancia!
- Honor X8 128GB, Kártyafüggetlen, 1 Év Garanciával
- Lebegj el a Sebességgel! Ryzen 7 5800x Most Elérhető Kamatmentes rèszletre is!
- ÚJ Lenovo ThinkPad X13 Gen 5 - 13.3" WUXGA IPS - Ultra 5 135U - 16GB - 512GB - Win11 - 2,5 év gari
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest