在Java中,接口(interface)只能定义方法的签名而不包含方法的具体实现。
当一个类实现了一个接口时,该类必须实现接口中定义的所有方法。实现类必须提供方法的具体实现,并且方法的签名必须与接口中定义的方法一致。
当通过接口类型的引用调用方法时,实际上是调用该对象实现的接口方法。也就是说,接口引用调用的方法是实现类中方法的具体实现。
下面是一个简单的例子,说明了如何定义接口、实现接口并调用接口方法:
// 定义接口
interface MyInterface {
void myMethod(); // 接口方法的签名
}
// 实现接口
class MyClass implements MyInterface {
public void myMethod() {
System.out.println("实现类中的方法被调用");
}
}
// 调用接口方法
public class Main {
public static void main(String[] args) {
MyInterface obj = new MyClass(); // 实例化实现类
obj.myMethod(); // 调用接口方法
}
}
在上面的例子中,定义了一个接口MyInterface
,其中包含了一个无参数的myMethod
方法。然后,通过实现接口MyClass
来实现接口中定义的方法。最后,在Main
类中,实例化了MyClass
对象并将其赋值给MyInterface
类型的引用obj
,通过obj
引用调用了myMethod
方法,实际上调用的是MyClass
中的方法实现。