我想从Box扩展一个Cube。我的程序有三个部分首先我做一个矩形类然后我用它来扩展一个Box类然后我扩展一个Cube。我被困在立方体部分。这就是我的指示所说的:
评估说明 一个。多维数据集是一个框,其中长度,宽度和高度都具有相同的值。 湾您不必添加任何其他实例变量或方法 将必须设置Cube的构造函数以确保长度,宽度和 高度都具有相同的值。
矩形:
public class Rectangle
{
// instance variables
private int length;
private int width;
/**
* Constructor for objects of class rectangle
*/
public Rectangle(int l, int w)
{
// initialise instance variables
length = l;
width = w;
}
// return the height
public int getLength()
{
return length;
}
public int getWidth()
{
return width;
}
}
盒:
public class Box extends Rectangle
{
// instance variables
private int height;
/**
* Constructor for objects of class box
*/
public Box(int l, int w, int h)
{
// call superclass
super(l, w);
// initialise instance variables
height = h;
}
// return the height
public int getHeight()
{
return height;
}
}
主要是Cube:
class Cube extends Box{
// instance variables
private int height;
private int length;
private int width;
public Cube(int h,int w,int l){
super(h,w,l);
}
public double getheight(){
return height;
}
public double getlength() {
return length;
}
public double getwidth() {
return width;
}
}
我需要知道我是否正确使用Cube。如果我没有做对,请帮我解决。
答案 0 :(得分:5)
立方体是一个所有边都相等的盒子。因此,将相同的长度参数传递给框的所有3个维度。
public class Cube extends Box{
public Cube(int length)
{
super(length, length, length);
}
}
答案 1 :(得分:0)
public class Box extends Cube {
答案 2 :(得分:0)
如果要扩展类,则经常使用“protected”类型,因为子级将能够以可见性继承该变量。这取决于子类是否需要直接修改成员变量。