我正在寻找JavaSomeInterface.class
和SomeClass.class
Java 之间的区别。有人可以解释一下吗?
编辑:说SomeClass
implements SomeInterface
。
我正在寻找JavaSomeInterface.class
和SomeClass.class
Java 之间的区别。有人可以解释一下吗?
编辑:说SomeClass
implements SomeInterface
。
Java 中的类用于保存数据并提供对该数据的操作。 接口用于实现多态性。它们定义了实现类必须提供的操作,以便它们的公共部分具有相似的行为。您可以将接口视为一种契约。
假设您有一些车辆,并且希望每辆车都知道它有多少个轮子。一辆汽车、一辆摩托车和一些其他车辆,你不知道它有多少个轮子,必须先数一数。所以你可以使用一个接口来强制每辆车提供它所拥有的轮子数量。
interface Vehicle {
// define the contract
int getNumberOfWheels();
}
class Car implements Vehicle {
// respect the contract by prividing an implmentation for the method getNumberOfWheels()
public int getNumberOfWheels() {
return 4;
}
}
class Motorcycle implements Vehicle {
public int getNumberOfWheels() {
return 2;
}
}
class GenericVehicle implements Vehicle {
public int getNumberOfWheels() {
return countWheels();
}
private int countWheels() {
int c=0;
// count...
return c;
}
}
// using the classes / diferent types of vehicles
Vehicle v1 = new Car();
Vehicle v2 = new Motorcycle();
Vehicle v3 = new GenericVehicle();
System.out.println("Vehicle 1 has " + v1.getNumberOfWheels() + " wheels.");
System.out.println("Vehicle 2 has " + v2.getNumberOfWheels() + " wheels.");
System.out.println("Vehicle 3 has " + v3.getNumberOfWheels() + " wheels.");
对于您要添加的每种新类型的车辆,Vehicle
如果您希望它的行为与其他车辆一样,则必须实现界面。
这不是关于接口的全部内容,但我希望这能帮助你理解它们。