java8牛逼了 接口都可以写默认的方法 最近刚刚才用上java8 突然发现这个功能很屌 记录一下
首先定一个接口 定义两个默认方法 test testA 定义一个静态方法
testSta 默认方法可以直接调用静态方法的内容
public interface Test { void testB(); default void test(){ System.out.println("测试接口默认方法"); testSta(); } default void testA(){ System.out.println("第二个默认接口"); } static void testSta(){ System.out.println("这是一个静态方法"); } }
定义个实现类 实现默认方法可以重写 也可以不实现
public class TestImpl implements Test { @Override public void testB() { } @Override public void test() { System.out.println("实现了默认的test方法"); } }
测试一下
public class TestA { public static void main(String[] args) { TestImpl im = new TestImpl(); im.test(); im.testA(); im.testB(); } }
输出结果:
实现了默认的test方法 第二个默认接口