一、反射
1.在Java虚拟机种,只有一个类,所有使用使用反射机制的时候,创建多少个引用都是指向同一个类的。
2.通过Class类对象创建java对象
package com.bjpowernode.java_learning;
import com.bjpowernode.java_learning.A113;
public class D113_ReflectTest02 {
public static void main(String[] args) throws Exception{
//将A113.class文件转载到JVM中的过程。
// Class.forName("A113");
//不会执行静态语句块
Class c = A113.class;
System.out.println("=====");
//下面的语句会执行静态语句块
A113 a = new A113();
Class c2 = a.getClass();
//获取Class类型的对象之后,可以创建该“类”的对象
Object o = c.newInstance();//调用了A113的无参数构造方法
System.out.println(o.toString());
}
}
package com.bjpowernode.java_learning;
public class A113 {
static {
System.out.println("A.....");
}
public A113() {
System.out.println("我是一个无参数构造方法");
}
}
遗留问题:为什么创建的对象执行了两次构造方法
二、源码:
D113_ReflectTest02.java
A113.java
https://github.com/ruigege66/Java/blob/master/D113_ReflectTest02.java
https://github.com/ruigege66/Java/blob/master/A113.java
2.CSDN:https://blog.csdn.net/weixin_44630050
3.博客园:https://www.cnblogs.com/ruigege0000/
4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料