class Box { // Instance Variables double length ,ipsos ; double width ,mikos ; double height ,platos; // Constructors public Box ( double side ) { width = side ; height = side ; length = side ; } public Box ( double x , double y , double z) { platos = y ; ipsos = z; mikos = x ; } // Methods double calculate(double praksi) { return 2 * ( width * height + width * length + height * length ) ; } double volume(double emvadon) { return platos*ipsos*mikos ; } @Override public String toString() { return "Volume: " + volume(1) + "\n Calculate: " + calculate(1); } public class Cube extends Box { public Cube(double side) { super(side, side, side); if (side<0) { System.out.println("lathos timi");} } public void calculate2(double z ) {super.calculate( z );} public void volume2(double y) {super.volume( y );} @Override public String toString() { return "Volume: " + super.volume(1) + "\n Calculate: " + super.calculate(1); } } public class Spirtokouto extends Box { public Spirtokouto(double side) { double weight; super(side, side, side,side); } } }
只有最后一部分(我的意思是我仅对此有问题)
当我编译它时,我没有合适的构造函数错误。为什么是这样??顺便说一下,Spirtokouto类的目的是要增加一个计数值(权重)。我可以将一个班级扩展到> 1个班级吗?
Box类有两个构造函数:public Box ( double side ),public Box ( double x , double y , double z)但它们都不带四个参数,而您要用四个参数来调用它,因此请更改此参数:
public Box ( double side )
public Box ( double x , double y , double z)
public Spirtokouto(double side) { double weight; super(side, side, side,side); }
对此:
public Spirtokouto(double side) { super(side, side, side); double weight; }
调用super必须首先在构造函数中进行。
super
我可以将一个班级扩展到 > 1个班级吗? 如果您是说一个类可以继承多个类,那么在Java中答案是否定的。但是,您可以让一个类实现多个接口,但这是另一回事。