使用 JAVA 类反射机制 : Class, Constructor, and newInstance
来源:互联网 发布:python 窗口编程 编辑:程序博客网 时间:2024/06/06 16:26
最近在项目中遇到一个问题,要求程序在 runtime 阶段动态创建一个类的实例。很自然的便想到用 JAVA 类反射机制,下面是
一个简单例子,来说明应用方法。本例中使用 Constructor 动态获取类的含参构造方法。
================================ MainClass ================================================
package com.zxn.example;
import java.lang.reflect.Constructor;
public class MainClass
{
public static void main(String[] args)
{
try
{
// find the class and the constructor
Class cls = Class.forName("com.zxn.example.MyClass");
Class[] paramDef = new Class[]{ String.class, String.class };
Constructor constructor = cls.getConstructor( paramDef );
// create a new instance by using the constructor
Object[] params = new Object[]{ "userName", "password" };
MyClass clsInstance = (MyClass)constructor.newInstance(params);
// call the test() method of the class
clsInstance.test();
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
}
}
================================ MyClass ================================================
package com.zxn.example;
public class MyClass
{
public MyClass()
{
System.out.println("MyClass() is getting created...");
}
public MyClass(String a, String b)
{
System.out.println("MyClass(String a, String b) is getting created...");
}
public void test()
{
System.out.println("test() method is getting called...");
}
}
程序运行结果:
MyClass(String a, String b) is getting created...
test() method is getting called...
- 使用 JAVA 类反射机制 : Class, Constructor, and newInstance
- Java反射机制--Class,Field,Method,Constructor
- Java反射机制:Constructor!
- class.newInstance和constructor.newInstance 区别
- Class.newInstance与Constructor.newInstance对比
- 【Java基础知识】Java反射--Class、Constructor、Filed、Method类的使用
- Java反射机制-class类
- Java反射机制--Class类
- Java反射机制-Class类
- Java反射机制--Class类
- Java反射之Class,Constructor,Field
- JAVA反射机制——Class 类的使用
- 浅谈Java中的反射机制以及Class、Constructor、Field、Method简单框架原理
- Class.newInstance()与new、Constructor.newInstance()的区别
- Class.newInstance()与new、Constructor.newInstance()的区别
- Class.newInstance()与new、Constructor.newInstance()的区别
- 反射Class类、Constructor类、Field类
- Java - Class Constructor and Finalizer 090905
- C#串口通讯
- pgSQL 集群过程
- 如何快速从百度获取真实流量
- 编写jsp页面的时候,直接在页面里输入汉字,保存时出现编码错误
- JSON在PHP中的应用
- 使用 JAVA 类反射机制 : Class, Constructor, and newInstance
- Git --- The stupid content tracker
- Oracle存储过程总结(一、基本应用)
- Dos command in windows
- 解决linux的root密码丢失问题(附图说明)
- 在vb.net中访问Excel(来自vb.net书)
- Linux内核设计与实现 之 linux在线资源
- 当你的Solaris系统boot时hang住怎么办?
- Java method to print http headers to console