接口
public interface Interface01 {
//抽象方法
void method(int num);
//常量
int NUM =10;
//默认方法
default void method201() {
methodpri();
methodsta();
}
//默认方法
default void method202() {
methodpri();
methodsta();
}
//静态方法
static void method301() {
methodsta();
}
//静态方法
static void method302() {
methodsta();
}
private void methodpri() {
System.out.println("默认方法重复代码");
}
private static void methodsta() {
System.out.println("默认/静态方法重复代码");
}
}
接口实现类
public class InterfaceImpl implements Interface01 {
//必须重写抽象方法
@Override
public void method(int num) {
//访问常量
System.out.println(Interface01.NUM);//建议接口名访问
System.out.println(NUM);
System.out.println(InterfaceImpl.NUM);
}
//可以重写默认方法,也可以直接继承过来
@Override
public void method201() {
}
@Override
public void method202() {
}
//不能重写静态方法
// @Override 报错
// 因此这个method301()是实现类自己的方法
static void method301() {
}
}
测试类
public class Test01 {
public static void main(String[] args) {