java8 特性

来源:互联网 发布:linux目录结构 编辑:程序博客网 时间:2024/05/18 09:57

根据个人理解就写几点感觉所有的更新看完无外乎就那么几点.
1. 有了le表达式来使用接口
2. 接口中为了配合le表达式使用出来了默认方法
3. 有关键字 ::

LE使用接口和默认方法

import static java.lang.System.*;/** * check LE in java8 * * @author annoy */public class MyClass {    /**     * 需要有一个指定的类型去接收表达式生成的方法;     */    interface A_one {        public void a_one_no();        // 个人感觉接口就像抽象类差不多了,不过可以多实现        default public void a_de() {            // 必须得有方法体            System.out.print("默认方法");        }    }    // 一个方法或上面有默认方法可以使用正则表达式    interface A_one_can {        public void a_one_hava(int a);    }    /**     * 有两个方法不能用正则表达式去执行     */    interface B_two {        public void b_no();        public void b_have(int a);    }    public static void all(A_one a, A_one_can a_one_can) {        a.a_one_no();        a_one_can.a_one_hava(5);    }    public static void main(String[] agrs) {        A_one_can a_one_can = a -> {            System.out.println(a);        };        A_one a_one = () -> {            System.out.print("a_no");        };        all(a_one, a_one_can);    }}// 运行结果:a_no5

le还可以使用在参数上不过,多差不多没什么特别的, 就像匿名内部类一样,只不过有了一个简单的表示方法.
作用域和匿名内部类一样没有什么特别的
想看去这里,java原版docs

:: 使用

这个能方便一点吧, 其实也没太大差距 , 反而在使用静态方法时根本就看不出来了.这个可以去看(http://blog.csdn.net/kimylrong/article/details/47255123)
讲java8的方法应用, 个人感觉很好.

0 0
原创粉丝点击