java反射系列四之创建运行时类的对象

一.概念认知



二.代码示例

package reflect;

public class TestConstructor {
    public static void main(String[] args) throws Exception {
        TestConstructor T = new TestConstructor();
        T.test();
    }
    public void test() throws Exception{
        String className = "reflect.Person";
        Class clazz = Class.forName(className);
        //创建对应的运行时类的对象,使用newInstance().实际上就是调用了运行时类的空参构造器
        //要想创建成功,1.要求对应的运行时类要有空参的构造器2.构造器的权限修饰符的权限要足够
        Object obj = clazz.newInstance();
        Person p = (Person)obj;
        System.out.println(p);
    }
}

原文地址:https://www.cnblogs.com/zjm1999/p/10336216.html

时间: 2024-11-04 00:35:59

java反射系列四之创建运行时类的对象的相关文章

创建运行时类的对象,调用指定的属性方法构造器

1 使用newInstance(),实际上是调用运行时空参的构造器    注意构造器的权限修饰符要足够,同时必须有一个空参的构造器. 2 调用指定的属性方法构造器 package lianxi1; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Meth

Java 笔记(四) RTTI - 运行时类型检查

运行时类型检查,即Run-time Type Identification.这是Java语言里一个很强大的机制,那么它到底给我们的程序带来了什么样的好处呢? 在了解运行时类型检查之前,我们要首先知道另一个密切相关的概念,即运行时类型信息(Run-time Information - 也可以缩写为RTTI) 运行时类型信息使得你可以在程序运行时发现和使用类型信息. 来自:<Thinking in Java>. OK,那么我们总结来说,RTTI就是能够让我们在程序的运行时去获取类型的信息.接下来我

Java反射(三)在运行时利用反射分析对象

在运行时利用反射分析对象,其实就是利用反射来获得或者设置类的域.举例如下: 有一个Student类: package testreflection; public class Student { private String stuNum; public Student(String stuNum) { // TODO Auto-generated constructor stub this.stuNum = stuNum; } } 利用反射来获得和设置Student类的stuNum域的测试代码

JAVA 创建运行时类实例

摘自 b站尚硅谷JAVA视频教程 Class PersonC = Person.class; /* * 调用newInstance的条件: * 1 对应的类要提供空参构造器 * 2 空参构造器的访问权限应为public * * * */ Object p = PersonC.newInstance(); System.out.println(p); 通过运行时类,可以动态创建不同的类: int num = new Random().nextInt(3); String classPath = n

java反射系列六之调用属性与方法

调用指定属性 package reflect; import java.lang.reflect.Field; import java.lang.reflect.Modifier; public class TestFiled { public static void main(String[] args) throws Exception { TestFiled t = new TestFiled(); t.test3(); } //调用运行时类中的指定的属性 public void test

Android学习笔记(十四)——在运行时添加碎片(附源码)

在运行时添加碎片 点击获取源码 将UI分割为多个可配置的部分是碎片的优势之一,但其真正强大之处在于可在运行时动态地把它们添加到活动中. 1.使用上一篇创建的Fragments项目,在main.xml文件中注释掉两个<fragment>元素: 2.在FragmentActivity.java中添加下面的代码: FragmentManager fragmentManager = getSupportFragmentManager();//向活动添加碎片 FragmentTransaction fr

VSTO之旅系列(四):创建Word解决方案

原文:VSTO之旅系列(四):创建Word解决方案 本专题概要 引言 Word对象模型 创建Word外接程序 小结 一.引言 在上一个专题中主要为大家介绍如何自定义我们的Excel 界面的,然而在这个专题中,我将为大家介绍如何用VSTO来创建Word项目,对于Word的VSTO开发和Excel的开发很类似,你同样也可以为Word自定义界面的,他们的区别主要在于对象模型的不同,只要熟悉了Word的对象模型,操作Word也就很简单了.下面首先就开始介绍Word的对象模型的. 二.Word对象模型 创

java反射系列一

一.概念认知 1.1  ●Java ReflectionReflection (反射)是被视为动态语言的关键, 反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息, 并能直接操作任意对象的内部属性及方法 1.2 ●Java反射机制提供的功能?在运行时判断任意一 个对象所属的类 ?在运行时构造任意-个类的对象?在运行时判断任意一个类所具有的成员变量和方法 ?在运行时调用任意个对象的成员变量和方法 ?生成动态代理 1.3  Java反射机制研究及应用●反射相关的主要API

Java 进阶(一) JVM运行时内存模型

1.JVM运行时数据区域的划分 a.程序计数器(Program Counter Register) 一块较小的内存空间,可以看作是当前线程所执行的字节码的行号指示器.每个线程拥有独立的一个计数器,如果当前执行的是Native方法,则计数器值为空. b.JVM栈(Java Virtual Machine Stack) 描述Java方法执行的内存模型,每个方法在执行的同时都会创建一个栈帧(Stacks Frame)用于存储局部变量表,操作数栈,动态链接,方法出口等信息. 每一个方法从调用直至执行完成