尘筱乐 2016-07-07 00:49 采纳率: 60%
浏览 1099
已采纳

小白求教,Java接口的一个问题

简单的说:
首先创建了一个接口
public interface CuboidInterface {
public double volumn(); //计算体积
}
接着创建了一个父类
//省略了构造方法等,只保留了计算体积的方法
public class Cuboid {
public double volume(){
return length*height*width;
}
}
然后是一个子类
public class CuboidValue extends CuboidWeight implements CuboidInterface{
private double price;
public CuboidValue(double length,double width,double height,double density,double price){
super(length,width,height,density);
this.price=price;
}
public double volumn(){
return super.volume();
}
public double weight(){
return super.weight();
}
public double cost(){
return super.weight()*price;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
}
我就想问问在测试类中有这么一句语句
CuboidInterface cv=new CuboidValue(12.5,20,10,2.7,10.5);
接口↑ 继承了接口和父类的子类↑↑↑↑↑↑↑↑
System.out.println("长方体的体积为:"+((CuboidValue)cv).volume());
这两句话什么意思?求详细的解答,最好能附上百度文库之类的资料

  • 写回答

2条回答 默认 最新

  • 解永东 2016-07-07 02:27
    关注

    第一句:父类引用指向子类实体。
    第二句:在第一句的前提下,父类引用调用的是子类实体的方法,在子类实体中调用父类方法完成最终实现。
    学好 多态和继承。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 有没有帮写代码做实验仿真的
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥30 vmware exsi重置后登不上
  • ¥15 易盾点选的cb参数怎么解啊
  • ¥15 MATLAB运行显示错误,如何解决?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题
  • ¥20 yolov5自定义Prune报错,如何解决?