欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java反射机制示例

程序员文章站 2024-02-28 17:40:22
java反射java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态...

java反射

java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。

复制代码 代码如下:

package c_20130313;

import java.lang.reflect.method;

class user

{

    private string name;

    public user(){}

    public user(string name)

    {

        this.name=name;

    }

    public void say()//无参的方法

    {

        system.out.println("大家好,我叫"+name+"!");

    }

    public void say(string str)//有参的方法

    {

        system.out.println("大家好,我叫"+name+"!"+str+",我是有参的方法!");

    }

}

/**

* @author lxa

* 反射最简单的例子

*/

public class反射

{

    public static void main(string[] args) throws exception

    {

        class c=class.forname("c_20130313_反射.user");//通过反射找到对应的类

        method m1=c.getmethod("say");//找到名字叫做say、且无参的方法

        method m2=c.getmethod("say",string.class);//找到名字叫做say、且有一个string类型参数的方法

        m1.invoke(c.newinstance());//注意newinstance()调用的是无参的构造方法!!!

        m2.invoke(new user("刘显安"),"哈哈");//通过有参的构造方法实例化一个对象

    }

}