反射介绍
1.反射作用:
反射可以在类外部,不通过类的对象掉用类的 构造器,方法,属性;(无论是否是私有的都可以调用);
原本的私有声明,只是告诉我们不建议用,因为它可能用不到,可是你硬要调用也是没问题的;
2.关于java.lang.Class的理解:
①类的加载过程:.java文件通过加载后生成.class(字节码文件),字节码文件加载到内存中,此过程就叫作类的加载。
②此时!加载到内存中的类就叫 做运行时类 ,作为一个Class对象。
③换句话说,Class的一个实列对象就是一个运行时类(大类);
④加载到内存中的运行时类会缓存一定的时间。在此时间我们可以通过不同方式获取此运行时类;
3.获取Class实例的方法:
①:类.class的方式
②:对象.getclass()
③:调用Class静态方法forName(“路径名”)方法 //此方法比较推荐,后面jdbc也会用到
4.哪些类型可以作为Class的对象;
不仅是运行时类可以作为Class的对象,图上的这些也行;
都是可以通过.class的方式来的;
5.了解类的加载器
类的加载器:引导类加载器----加载java核心库的(对外不可见)
扩展类加载器----加载jar包的
系统类加载器----负责加载自定义的类
使用 类名.class.getclassloader---可以获取系统加载器;
getparent是获取上一层加载器;
6.读取配置文件的两种方式;
1.创建propertiose集合对象,使用流读取
2.当前类的类加载器获取流,再读入文件
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· 因为Apifox不支持离线,我果断选择了Apipost!