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

简介:

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
使用Java中的反射机制实现动态加载类
在Java编程中,反射是一种强大的技术,它允许我们在运行时获取并操作类、对象、方法以及属性的信息。其中一个重要的应用场景是动态加载类,这使得我们能够在程序运行时根据需要加载和使用特定的类。
146 1
|
5月前
|
存储 算法 Java
JAVA程序运行问题之Java类加载到JVM中加载类时,实际上加载的是什么如何解决
JAVA程序运行问题之Java类加载到JVM中加载类时,实际上加载的是什么如何解决
|
5月前
|
Java
Java中的动态类加载详解
Java中的动态类加载详解
|
7月前
|
安全 前端开发 Java
Java语言中的类装载机制详解
Java语言中的类装载机制详解
|
6月前
|
安全 Java
Java 对象创建与使用:你真的会用吗?
【6月更文挑战第15天】在Java中,对象创建涉及`new`关键字和构造器,用于初始化。使用对象时注重属性和方法的访问,遵循命名规范。关注对象生命周期,避免过度创建,如在循环内,以减少内存消耗和提高性能。还要考虑线程安全,尤其在多线程环境下,确保正确同步以防止数据不一致。通过优化对象的创建与使用,提升代码效率和可靠性。
46 0
|
Java
Java 反射--创建运行时类的对象
Java 反射--创建运行时类的对象
56 0
你知道 Java 类是如何被加载的吗?
一:前言 最近给一个非Java方向的朋友讲了下双亲委派模型,朋友让我写篇文章深度研究下JVM的ClassLoader,我确实也好久没写JVM相关的文章了,有点手痒痒,涂了皮炎平也抑制不住。 我在向朋友解释的时候是这么说的:双亲委派模型中,ClassLoader在加载类的时候,会先交由它的父ClassLoader加载,只有当父ClassLoader加载失败的情况下,才会尝试自己去加载。
11192 6
|
监控 Java
java类在何时被加载
java类在何时被加载
630 0
java类在何时被加载
|
IDE 数据可视化 Java
查看Java字节码内容的几种方式
查看Java字节码内容的几种方式
|
Java API 容器
108. 你真的知道 Java 类是如何被加载的吗?(一)
108. 你真的知道 Java 类是如何被加载的吗?(一)
102 0
下一篇
无影云桌面