首页 > 代码库 > java8接口定义增强

java8接口定义增强

java1.7之前,接口中只允许有全局常量和抽象方法,而1.8之后允许在接口中扩充default修饰的普通方法和static修饰的静态方法

  其目的是在修改接口中方法的时候,子类就不必去一一修改

package com.java.demo;
interface IMessage{
    public void print();//抽象方法
    default void fun(){ //接口中定义的普通方法,此处必须用default修饰
        System.out.println("接口中的普通方法");
    }
    static void change(){
        System.out.println("接口中定义的static方法");
    }
}
class MessageImpl implements IMessage{

    @Override
    public void print() {
        System.out.println("接口中的抽象方法");
        
    }
    
}
public class TestDemo{
    public static void main(String args[]){
        IMessage msg = new MessageImpl();
        msg.print();
        msg.fun();
        IMessage.change();
    }
}

 

java8接口定义增强