title: JavaSE笔记补充内容(待更新)
cover: /img/2.jpg
categories: 笔记整理
description: JAVA
abbrlink: 34973
dete: 2022-4-7 22:16:20
JAVA笔记补充内容
多态
多态的优点和缺点
多态的类型转换
Animal a=new DOg();
a.run();
Animal a2=new Totorise();
a2.run();
public static void go(Animal a){
//不知道a是什么动物 如果是狗 而此时强转成乌龟类型 编译不会报错 但是运行时会检测出异常 因为他们的内存地址不一样
if(a instanceof Tortoise){
Tortoise t=Tortoise(a);
t.layEggs();
}else if(a instanceof Dog){
Dog d=new Dog();
d.lookDoor();
}
}
匿名内部类
开发中不是我们主动去定义匿名内部类,而是别人需要我们写或者我们可以写的时候才会使用。匿名内部类的代码可以实现代码进一步的简化。
Lambda表达式
总结
Lambda表达式的省略写法
反射机制
第一步:获取Class类的对象
第二步获取构造器对象
第三步:利用构造器对象创建实例
当构造器是私有时 可以使用暴力反射
第四步获取成员变量
第五步 获取方法对象
反射的作用
反射可以暴力破解私有属性和方法还可以突破泛型约束
除了反射 还可以通过以下方法破解泛型约束
ArrayList<Integer> list=new ArrayList();
list2=list;
list2.add("张三");
//此时也可以输入其他类型的数据
注解