Java反射笔记一

java的反射: 

具有分析类的能力,并且可以动态获取类中的所有信息;

Class类:

在程序运行期间,java运行时系统始终为所有的对象维护一个被称为运行时的类型标识。这个信息保存着每个对象所属的类路径,java虚拟机利用运行时信息执行相应的方法。

Class类对象的示例化:

package com.zhangchao;

import com.zhangchao.bean.Person;

public class ReflectionTest {

	public static void main(String[] args) {
		newInstance1();
		newInstance2();
		newInstance3();
	}

	/**
	 * 获取字节码类的实例对象方式一
	 */
	public static void newInstance1() {
		Person p = new Person();
		Class<?> clazz = p.getClass();
	}

	/**
	 * 获取字节码类的实例对象方式二
	 */
	public static void newInstance2() {
		Class<?> clazz = Person.class;		
	}

	/**
	 * 获取字节码类的实例对象方式三
	 */
	public static void newInstance3() {
		String s = "com.zhangchao.bean.Person";
		try {
			Class<?> clazz = Class.forName(s);
			Object obj = clazz.newInstance();
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		} catch (InstantiationException e) {
			e.printStackTrace();
		} catch (IllegalAccessException e) {
			e.printStackTrace();
		}
	}
}
public static Class<?> forName(String className)

返回与带有给定字符串名的类或接口相关联的 Class 对象

public T newInstance()

返回这个类的新实例



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值