pocetnik

pocetnik

offline
  • Pridružio: 08 Sep 2005
  • Poruke: 70

class Figure {
double dim1;
double dim2;

Figure(double a, double b) {
dim1 = a;
dim2 = b;
}

double area() {
System.out.println("Area for Figure is undefined.");
return 0;
}
}

class Rectangle extends Figure {
Rectangle(double a, double b) {
super(a, b);
}

// override area for rectangle
double area() {
System.out.println("Inside Area for Rectangle.");
return dim1 * dim2;
}
}

class Triangle extends Figure {
Triangle(double a, double b) {
super(a, b);
}

// override area for right triangle
double area() {
System.out.println("Inside Area for Triangle.");
return dim1 * dim2 / 2;
}
}

class FindAreas {
public static void main(String args[]) {
Figure f = new Figure(10, 10);
Rectangle r = new Rectangle(9, 5);
Triangle t = new Triangle(10, Cool;

Figure figref;

figref = r;
System.out.println("Area is " + figref.area());

figref = t;
System.out.println("Area is " + figref.area());

figref = f;
System.out.println("Area is " + figref.area());
}
}


Излаз:
Inside Area for Rectangle.
Area is 45.0
Inside Area for Triangle.
Area is 40.0
Area for Figure is undefined.
Area is 0.0



Није ми јасно како то да се прво испише резултат методе area па се онда она позива тј на позив:

System.out.println("Area is " + figref.area());

Логично би било да се испише:
Area is Inside Area for Rectangle 45.0



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 17 Jun 2007
  • Poruke: 9
  • Gde živiš: Nis

zato sto prvo mora da se izvrsi metoda area() da bi vratila vrednost
a ona u sebi sadrzi System.out.println("Inside Area for Rectangle.");
a tek posto ona vrati vrednost i potpuno se izvrsi, dovrsi se
System.out.println("Area is " + figref.area());

ps. System.out.println("Area is " + figref.area()); ne bi mogla da izvrsi svoj posao a da Area() ne vrati vrednost, zato System.out.println("Area is " + figref.area()); propusta da se prvo izvrsi metoda Area();



Ko je trenutno na forumu
 

Ukupno su 1273 korisnika na forumu :: 50 registrovanih, 7 sakrivenih i 1216 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: Apok, armor, babaroga, bojankrstc, bojcistv, bokisha253, Brana01, BraneS, ccoogg123, CheefCoach, Dannyboy, darionis, Dimitrije Paunovic, DragoslavS, goxin, havoc995, HogarStrashni, ILGromovnik, Istman, JOntra, jukeboxer, kikisp, Krvava Devetka, Kubovac, Luka Blažević, MB120mm, Mercury, mikrimaus, milenko crazy north, Ne doznajem se u oružje, Nemanja.M, nuke92, Oscar, raptorsi, royst33, Sale.S, sasa87, Sirius, sombrero, Srle993, styg, Tvrtko I, vathra, Vlad000, Vlada1389, Webb, wizzardone, zdrebac, 79693, 223223