我必须为一个包创建一个接口。这个接口需要calculateVolume()
和calculateSurfaceArea()
方法。问题是这个接口将被Cube
、Sphere
和Cylinder
类使用,它们有不同的公式来解决这些问题。所以我想知道如何使接口函数满足所有三种不同的计算?
附带问题:我如何制作一种clone()
方法以及它的用途是什么?
在你的接口中,你声明了方法,但你没有实现它们。这就是接口的含义:具有参数和返回类型的方法列表,这些方法执行不同的操作,但没有任何实现。例如:
public interface Shape
{
double calculateVolume();
double calculateSurfaceArea();
}
然后,当你来实现接口时:
public class Cube
implements Shape
{
private double sideLength;
@Override
public double calculateVolume()
{
return sideLength * sideLength * sideLength;
}
// etc.
}
关于接口的 Oracle 教程应该清楚地说明这一切。
同名,不同的实现,不就是接口的用途吗?克隆用于制作对象的完整副本(所有成员的副本)。