Java获取Class的三种实现方法

        如创建了一个User类:

package com.example.zhan;

public class User {

      private int no;
      private String sex;
      private String name;

    public User() {
    }

    public User(int no, String sex, String name) {
        this.no = no;
        this.sex = sex;
        this.name = name;
    }

    public int getNo() {
        return no;
    }

    public void setNo(int no) {
        this.no = no;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return "User{" +
                "no=" + no +
                ", sex='" + sex + '\'' +
                ", name='" + name + '\'' +
                '}';
    }
}

1.Class.forName("包路径");

 Class user = Class.forName("com.example.zhan.User");

2.实例对象.getClass()

User user=new User();
Class auser=user.getclass();

3.类名.class

Class userClass = User.class;

将以上进行控制台的输出,结果为:

并且以上三者获取的为同一字节码文件(每个类一次编译后只产生一个对应的字节码文件)

 


版权声明:本文为Kristabo原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
THE END
< <上一篇
下一篇>>