首页 > 编程语言 > 详细

java中三种方式获得类的字节码文件对象

时间:2014-10-27 22:53:59      阅读:272      评论:0      收藏:0      [点我收藏+]
package get_class_method;

public class ReflectDemo {

    /**
     * @param args
     */
    public static void main(String[] args) {
        getClassObject1();
        getClassObject2();
        getClassObject3();
    }
    
    public static void getClassObject1(){
        Person p = new Person();
        System.out.println(p.getClass().getName());
    }
    /*
     * 方式二:重点掌握
     * 通过给定类的字符串名称就可获得该类的字节码文件对象,更为扩展。
     * (第一种和第三种都不具有扩展性)
    */
    public static void getClassObject2(){
         Class<Person> pclass = null;
         try {
             /*
              * 类的名字一定要写全(包括该类的包)
              * 因为工程默认的路径查找时在bin目录或者src目录,如果类名不全,就无法找到该类
             */
             pclass = (Class<Person>) Class.forName("get_class_method.Person");
             System.out.println(pclass.getName());
         } catch (ClassNotFoundException e) {
             e.printStackTrace();
         }
    }
    /*
     * 方式三:
     * 任何数据类型都有一个静态的属性 .class来获取其对应类的字节码文件对象
     * 相对简单,但是还是要明确用到类中的静态成员。还是不够扩展!
    */
    public static void getClassObject3(){
        Class pclass = Person.class;
        System.out.println(pclass.getName());
    }
    
}

 

java中三种方式获得类的字节码文件对象

原文:http://www.cnblogs.com/hujunzheng/p/4055174.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!