1. 程式人生 > >Java8新特性學習-總結

Java8新特性學習-總結

1. 介面的擴充套件方法

Java8允許給介面新增一個非抽象的方法,只需要使用default關鍵字即可,這個特徵又叫做擴充套件方法

程式碼:定義Formula 介面,接口裡定義非抽象方法sqrt,並用default修飾

    interface Formula {
        double calculate(int a);
        default double sqrt(int a) {
            return Math.sqrt(a);
        }
    }

實現了Formula介面的子類只需要實現一個calculate方法,預設方法sqrt將在子類中可以直接使用。

    Formula formula = new Formula() {
        @Override
        public double calculate(int a) {
            return sqrt(a * 100);
        }
    };
         
    formula.calculate(100);     // 100.0
    formula.sqrt(16);           // 4.0

2. Lamda 未完。。。有時間再總結