createinstancedemo.java

来自「java的反射机制的代码实例」· Java 代码 · 共 62 行

JAVA
62
字号
import java.lang.reflect.*;
public class CreateInstanceDemo 
{
	public static void main(String[] args) 
	{
		//获取Class对象用来描述自定义类Employee
		Class c = Employee.class;
		
		//声明Object类对象,并初始化其值为空
		Object obj = null;
		try 
		{
			//运行时实例化Employee类对象
			obj = c.newInstance();
			//类型转换,将Object类对象obj转化为Employee类对象
			Employee em = (Employee)obj;
			
			//使用Employee对象em的方法设置属性值
			em.set_name("wangxyw");
			em.set_age(24);
			em.set_sex("male");
			
			System.out.println(em.get_name());
			System.out.println(em.get_age());
			System.out.println(em.get_sex());
			
			//获取实例化后的对象em的所属类
			System.out.println(em.getClass().toString());
		} 
		catch (InstantiationException e) {e.printStackTrace();} 
		catch (IllegalAccessException e) {e.printStackTrace();}		
	}
}

class Employee   //自定义类
{
	private String name;
	private int age;
	private String sex;
	
	public Employee() //无参数构造方法
	{}
	
	//含参数构造方法
	public Employee(String name,int age,String sex)
	{
		this.name = name;
		this.age = age;
		this.sex = sex;
	}
	
	//获取自定义类属性值方法	
	public String get_name(){return name;}
	public int get_age(){return age;}
	public String get_sex(){return sex;}
	
	//自定义类改变属性值方法	
	public void set_name(String name){this.name = name;}
	public void set_age(int age){this.age = age;}
	public void set_sex(String sex){this.sex = sex;}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?