创建对象(反射)
来源:互联网 发布:java tcp协议开发 编辑:程序博客网 时间:2024/05/23 16:21
package com.jalja.reflect;
import java.util.Date;
public class CreateInstance {
public static void main(String[] args) {
System.out.println(createInstance3("java.util.Date",Date.class));
}
//创建对象
public static Object createInstance1(String className){
Class clazz;
try {
clazz = Class.forName(className);
Object obj=clazz.newInstance();
return obj;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
//创建对象(解决类型强转问题)
public static <T>T createInstance2(Class<T> clazz){
try {
return clazz.newInstance();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
//创建对象(解决类型强转问题)
public static <T>T createInstance3(String className,Class<T> clazz){
try {
Class<T> cla=(Class<T>) Class.forName(className);
Object obj=cla.newInstance();
//检查对象与类型是否兼容
if(clazz.isInstance(obj)){
return (T) obj;
}
throw new IllegalAccessException("对象和类型不兼容");
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}
import java.util.Date;
public class CreateInstance {
public static void main(String[] args) {
System.out.println(createInstance3("java.util.Date",Date.class));
}
//创建对象
public static Object createInstance1(String className){
Class clazz;
try {
clazz = Class.forName(className);
Object obj=clazz.newInstance();
return obj;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
//创建对象(解决类型强转问题)
public static <T>T createInstance2(Class<T> clazz){
try {
return clazz.newInstance();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
//创建对象(解决类型强转问题)
public static <T>T createInstance3(String className,Class<T> clazz){
try {
Class<T> cla=(Class<T>) Class.forName(className);
Object obj=cla.newInstance();
//检查对象与类型是否兼容
if(clazz.isInstance(obj)){
return (T) obj;
}
throw new IllegalAccessException("对象和类型不兼容");
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}
0 0
- 创建对象(反射)
- java基础-反射3(反射,反射创建对象,操作对象属性,调用对象方法)
- c# 反射创建对象
- 反射动态创建对象
- 运用反射创建对象
- 配置文件+反射 创建对象
- 利用反射创建对象
- 利用反射创建对象
- Java 反射创建对象
- 通过反射创建对象?
- java反射创建对象
- 反射机制学习1(反射创建对象)
- 利用反射动态创建对象
- 利用反射动态创建对象
- 利用反射动态创建对象
- 利用反射动态创建对象
- Java通过反射创建对象
- java 反射应用---创建对象
- 在c++中const引用引发的几个小问题
- vs2010 fftw安装使用
- Android中加入悬浮窗
- HDU 1195 Open the Lock (双向BFS)
- Head First设计模式C++实现--第五章:单件(Singleton)模式
- 创建对象(反射)
- 挖地雷
- MFC 多线程获取窗口
- iphone开源项目list
- Js作用域链及变量作用域
- 利用SetConsoleTextAttribute函数设置控制台颜色
- termios结构与控制终端接口的关系
- 电池专业版充电屏保页面增加手势后 如何使一部分区域不响应
- Linux设备模型(6)_Bus