Kezdőoldal » Számítástechnika » Programozás » Hogyan kell lefordítani ill....

Hogyan kell lefordítani ill. lefuttatni egy JAVA programot, ha egy csomagba helyezzük őket öröklődésnél?

Figyelt kérdés
2010. ápr. 11. 13:27
 1/2 A kérdező kommentje:

Továbbá lenne egy kérdésem. Beirom az egész programot mert szerintem ugy tudnátok segiteni nekem:


package sik;


public abstract class Sikidom {

public abstract double terulet();

public abstract double kerulet();

}


--------------------------


package sik;


public class Kor extends Sikidom {

private double r;


public Kor(double r) {

this.r = r;

}


public double terulet() {

return r * r * 3.14159;

}


public double kerulet() {

return 2 * r * 3.14159;

}


public double getR() {

return r;

}

}



----------------------------


package sik;


public class Teglalap extends Sikidom {

private double a;

private double b;


public Teglalap(double a, double b) {

this.a = a;

this.b = b;

}


public double terulet() {

return a * b;

}


public double kerulet() {

return 2 * (a + b);

}


public double getA() {

return a;

}


public double getB() {

return b;

}

}


------------------------------------------------


public class EgyenesHasab {

private Sikidom alap;

private double magassag;


public EgyenesHasab(Sikidom alap, double magassag) {

this.magassag = magassag;


//this.alap = alap;

//


Sikidom uj;

if(alap instanceof Kor) {

uj = new Kor( ((Kor)alap).getR() );

} else if(alap instanceof Teglalap) {

uj = new Teglalap( ((Teglalap)alap).getA(), ((Teglalap)alap).getB() );

} else uj = alap;

this.alap = uj;

}


public double getFelszin() {

return alap.terulet() + alap.kerulet() * magassag;

}


public double getTerfogat() {

return alap.terulet() * magassag;

}

}


-------------------------------


package sik;


public class Fut {

public static void main(String args[]) {

EgyenesHasab henger = new EgyenesHasab(new Kor(1.45), 12.2);

EgyenesHasab hasab = new EgyenesHasab(new Teglalap(2, 3), 10);


System.out.println("henger terfogata: " + henger.getTerfogat());

System.out.println("henger felszine: " + henger.getFelszin());

System.out.println("hasab terfogata: " + hasab.getTerfogat());

System.out.println("hasab felszine: " + hasab.getFelszin());

}

}


---------------------------


A kérdésem az lenne hogy az EgyenesHasab osztályban lévő metódus mit jelent pontosan?


public EgyenesHasab(Sikidom alap, double magassag) {

this.magassag = magassag;


//this.alap = alap;

//


Sikidom uj;

if(alap instanceof Kor) {

uj = new Kor( ((Kor)alap).getR() );

} else if(alap instanceof Teglalap) {

uj = new Teglalap( ((Teglalap)alap).getA(), ((Teglalap)alap).getB() );

} else uj = alap;

this.alap = uj;

}


Erről lenne szó. Köszönöm a választ.

2010. ápr. 11. 13:40
 2/2 anonim ***** válasza:

az a metódus az egyenes hasáb konstruktora, ami vár paraméterként egy sikidomot (alap) és egy magasságot (magassag).


Sikidom uj;

if(alap instanceof Kor) {

uj = new Kor( ((Kor)alap).getR() );

} else if(alap instanceof Teglalap) {

uj = new Teglalap( ((Teglalap)alap).getA(), ((Teglalap)alap).getB() );

} else uj = alap;

this.alap = uj;


ennek a résznek viszont nem sok értelme van. Gondolom használsz valami IDE-t (pl. Netbeans), azzal teljesen egyértelmű, hogyan kell fordítani és futtatni. Ha nem, tedd fel. Ha nem akarod, akkor javac-cal kell compile-olni, majd java-val futtatni parancssorból, de erre inkább keress rá, mert én sem tudom pontosan.

2010. ápr. 12. 00:04
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!