- 抽象方法
格式:
public abstract 返回值类型 方法名称(参数列表);
注意:接口当中的抽象方法,修饰符必须是两个固定的关键字,public abstract
这两个关键字修饰符,可以选择性的省略
2.默认方法
格式:
public default 返回值类型 方法名称(参数列表){
方法体
}
备注:默认方法可以解决接口升级的问题
3.静态方法。
格式:
public static 返回值类型 方法名(参数列表){
方法体
}
注意: 不能通过接口实现类的对象来调用接口当中的静态方法
正确使用:接口名称.静态方法名(参数);
public interface Myinterface {
//抽象方法
public abstract void mothed1();
public abstract void mothed2();
public abstract void mothed3();
//默认方法
public default void mothodDefault() {
System.out.println("默认方法");
}
public default void mothodDefaultA() {
System.out.println("默认方法A");
}
//静态方法
public static void mothedStatic() {
System.out.println("静态方法");
}
}
public class Ziinterface implements Myinterface{
public void mothed1() {
System.out.println("方法1");
}
public void mothed2() {
System.out.println("方法2");
}
public void mothed3() {
System.out.println("方法3");
}
}
public class ZiinterfaceA implements Myinterface{
@Override
public void mothed1() {
// TODO Auto-generated method stub
System.out.println("抽象方法B1");
}
@Override
public void mothed2() {
// TODO Auto-generated method stub
System.out.println("抽象方法B2");
}
@Override
public void mothed3() {
// TODO Auto-generated method stub
System.out.println("抽象方法B3");
}
}
public class TestInterface {
public static void main(String[] args) {
// TODO Auto-generated method stub
//创建Ziinterface对象a
Ziinterface a = new Ziinterface();
a.mothed1(); //抽象方法
a.mothed2();
a.mothed3();
a.mothodDefault();//默认方法
a.mothodDefaultA();//默认方法A
System.out.println("==================");
//创建ZiinterfaceA对象b
ZiinterfaceA b = new ZiinterfaceA();
b.mothed1();
b.mothodDefault(); //默认方法
b.mothodDefaultA();// 默认方法A
System.out.println("===================");
Myinterface.mothedStatic();//静态方法的调用
}
}