-
反射的概述
类加载器(ClassLoader)
负责将类的字节码文件加载到内存中,并生成对应的Class对象
Class 对象
java.lang.Class类的对象,也叫字节码文件对象,每个Class对象对应一个字节码文件
类加载时机
1.创建类的实例
1
|
Student stu= new Student(); |
当程序创建了一次该类的对象时,再次创建该类的对象时,类的加载器不会再次将字节码文件加载到内存当中
2.访问类的静态成员
1
|
Calendar.getInstance*(); |
3.初始化类的子类
1
2
|
class User extends Person(){} User user = new User(); //先加载父类 |
4.反射方式创建的Class对象
1
|
Class clazz =Class.forName( "类的正名" ); |
正名:包名+类名,例如:cn.qq.demo.Student
获取Class对象的三种方式
Object类的getClass()方法
1
|
Class clazz =对象名.getClass(); |
类的静态属性
1
|
Class clazz =类名. class ; |
Class类的静态方法
1
|
Class clazz =Class.forName( "类的正名" ); |
三种获取Class对象的例子:
Student.java
1
2
3
4
5
|
cn.qq.demo.Student public class Student{ } |
Demo.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
cn.qq.demo.Demo public class Demo{ public static void main(String[] args) throws ClassNotFoundException{ //方式一 Student stu = new Student(); Class clazz1 = stu.getClass(); //方式二 Class clazz2 = Student. class ; //方式三 Class clazz3 = Class.forName( "cn.qq.demo.Student" ); } } |
原文:https://www.cnblogs.com/kkwt/p/14296051.html
最新更新
python爬虫及其可视化
使用python爬取豆瓣电影短评评论内容
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
uniapp/H5 获取手机桌面壁纸 (静态壁纸)
[前端] DNS解析与优化
为什么在js中需要添加addEventListener()?
JS模块化系统
js通过Object.defineProperty() 定义和控制对象
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比