lambda表达式

内部类

static内部类属于外部类的class内,而非静态内部类属于外部类的对象内。因为在其内所以访问范围等同于其内的方法,互相之间private可访问,原因就是互相提供静态方法同时内部对象含有外部的引用(深入字节码)
OutClassTest类有个叫InnerClass的内部类(非静态)
俩个类的外部使用:
OutClassTest oc1 = new OutClassTest();
OutClassTest.InnerClass no_static_inner = oc1.new InnerClass();
俩个类的内部使用:
InnerClass innerObj = new InnerClass();
sch就是School的一个对象。
假如School是内部静态类:
Student.School sch = new Student.School();

https://blog.csdn.net/Hacker_ZhiDian/article/details/82193100

传统的对象创建过程:

  1. 类实现接口
  2. new类创建对象
  3. 对象传入目标使用

可传递:数据,执行代码(任意多个函数)

匿名函数方式:

  1. 实现接口同时new
  2. 对象传入

可传递:执行代码(任意多个函数)

lambda方式:

与匿名类相同
但过程省略多
可传递:执行代码(仅一个函数)