环境变量配置:
JAVA_HOME------->C:\Program Files\Java\jdk1.8.0_291 #JDK的安装目录
Path ----->C:\Program Files\Java\jdk1.8.0_291\bin #在任何路径下都可以访问对应bin目录下的所有命令,即指定命令搜索路径。
CLASSPATH----->. #.代表当前目录
#CLASSPATH在JDK1.5版本以上可以不用配置。
CLASSPATH----->.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar #注意有个小点. 指定类搜索路径,JVM通过CLASSPATH来寻找类。
参考:https://blog.youkuaiyun.com/cuipp0509/article/details/74852740
即:如果classpath有配置,在classpath这个目录下必须有.class的字节码文件才行
lamada: 特殊的匿名内部类
消费型接口
接口不能new,
@FunctionalInterface //函数式接口 只有一个重写方法,多一个方法都报错,
interface IUsb{
public void start();
}
public class Test {
public static void main(String[] args) throws IOException, ClassNotFoundException, InstantiationException, IllegalAccessException {
/*IUsb usb=new IUsb() {
@Override
public void start() {
System.out.println("usb设备启动");
}
};*/
IUsb usb1=()-> System.out.println("usb设备启动+1");
usb1.start();
}
}
//这几个都是函数式接口
Consumer consumer=new Consumer() {
@Override
public void accept(Object o) {
}
};
consumer.accept(o);
Function function=new Function() {
@Override
public Object apply(Object o) {
return null;
}
};
function.apply(o);
Supplier supplier=new Supplier() {
@Override
public Object get() {
return null;
}
};
supplier.get();
stream
很少用到似的,麻烦的很。