资讯专栏INFORMATION COLUMN

Java中的反射创建一个新实例,并将引用变量类型设置为新的实例类名称

supernavy / 2480人阅读

import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
public class Foo {

    public void printAMessage() {
    System.out.println(toString()+":a message");
    }
    public void printAnotherMessage(String theString) {
        System.out.println(toString()+":another message:" + theString);
    }

    public static void main(String[] args) {
        Class c = null;
        try {
            c = Class.forName("Foo");
            Method method1 = c.getDeclaredMethod("printAMessage", new Class[]{});
            Method method2 = c.getDeclaredMethod("printAnotherMessage", new Class[]{String.class});
            Object o = c.newInstance();
            System.out.println("this is my instance:" + o.toString());
            method1.invoke(o);
            method2.invoke(o, "this is my message, from a config file, of course");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (NoSuchMethodException nsme){
            nsme.printStackTrace();
        } catch (IllegalAccessException iae) {
            iae.printStackTrace();
        } catch (InstantiationException ie) {
            ie.printStackTrace();
        } catch (InvocationTargetException ite) {
            ite.printStackTrace();
        }
    }
}

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/73435.html

相关文章

  • 【笔记】Java核心技术卷一读书笔记

    摘要:构造器没有返回值一个对象变量并没有实际包含一个对象,而仅仅引用一个对象,如有两个部分。子类重写方法的返回值范围必须小于等于父类方法的返回值。枚举类型中可以添加一些构造器方法和域。 第三章 Java是一种强类型语言。 https://blog.csdn.net/qq_3619... 在Java中,整型的范围与机器无关。 int 4字节 short 2字节 long ...

    weizx 评论0 收藏0
  • Java虚拟机学习

    摘要:虚拟机学习是一个虚构出来的计算机有自己的处理器堆栈寄存器以及相应的指令系统等。类装载器子系统涉及虚拟机的其它组成部分和来自库的类。运行中的程序的每一个线程都是一个独立的虚拟机执行引擎的实例。 Java虚拟机学习 JVM JVM是一个虚构出来的计算机,有自己的处理器,堆栈,寄存器以及相应的指令系统等。JVM是JRE的一部分,通过在实际的计算机上仿真模拟各种计算机功能,这样就能使Java在...

    RobinTang 评论0 收藏0
  • 夯实基础系列一:Java 基础总结

    摘要:可实现单例模式代码块初始化静态变量,只被执行一次内部类不能与外部类重名,只能访问外部类静态数据包括私有多分支选择整型或字符类型变量或整数表达式开始支持。 前言 大学期间接触 Java 的时间也不短了,不论学习还是实习,都让我发觉基础的重要性。互联网发展太快了,各种框架各种技术更新迭代的速度非常快,可能你刚好掌握了一门技术的应用,它却已经走在淘汰的边缘了。 而学习新技术总要付出一定的时间...

    greatwhole 评论0 收藏0
  • Java反射机制

    摘要:反射机制相关类介绍类的实例表示正在运行的应用程序中的类和接口。包括基本数据类型没有公共构造方法。越过泛型检查遍历集合输出结果越过泛型检查通过反射机制获得数组信息并修改数组的大小和值通过反射机制分别修改和类型的数组的大小并修改数组的第一个值。 什么是Java的反射机制? Java 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任...

    galaxy_robot 评论0 收藏0
  • Java Core-五.继承-详解反射机制

    摘要:减少,减轻压力。实现测试类无参构造器无参构造器含参构造器含参构造器忽略访问的安全检查无参构造器含参构造器获取方法规则类获取修饰的指定方法含超类获取修饰的指定方法含超类类获取指定方法包括修饰,暴力反射,不 五.继承 继承 定义:基于已有的类构造新类 反射 定义:在程序运行期间发现更多的类以及属性的能力 多态 定义:一个对象变量可以指示多种实际类型的现象 动态绑定 定义:在运行时能够自动...

    soasme 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<