温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java Class类是什么

发布时间:2026-10-03 15:03:55 来源:亿速云 阅读:83 作者:小樊 栏目:编程语言

在 Java 中,Class 类(java.lang.Class) 是 反射机制的核心类,用来表示运行时的类或接口本身。


一、一句话理解

Class 类的对象,代表“一个类在 JVM 中的元数据”
也就是说:
每个被加载的类,在内存中都会有一个对应的 Class 对象

String.class  // 表示 String 类本身

二、Class 对象是什么?

当 JVM 加载一个类时,会:

  1. 读取 .class 文件
  2. 把类信息放入方法区
  3. 自动创建一个 Class 对象

这个 Class 对象包含:

  • 类名
  • 父类
  • 接口
  • 构造方法
  • 方法
  • 字段
  • 注解等

三、如何获取 Class 对象?

1️⃣ 通过类名

Class<?> clazz = String.class;

2️⃣ 通过对象

String s = "hello";
Class<?> clazz = s.getClass();

3️⃣ 通过全类名(最常用,反射)

Class<?> clazz = Class.forName("java.lang.String");

四、Class 类能做什么?(反射)

通过 Class 对象,可以:

  • 创建对象
  • 调用方法
  • 访问/修改属性
  • 获取注解

示例:创建对象

Class<?> clazz = Class.forName("java.util.Date");
Object obj = clazz.getDeclaredConstructor().newInstance();

示例:调用方法

Method method = clazz.getMethod("toString");
System.out.println(method.invoke(obj));

五、Class 和 class 的区别

名称 含义
class Java 关键字,定义类
Class 一个 Java 类,表示“类的信息”

六、常见的 Class 方法

clazz.getName();        // 全类名
clazz.getSimpleName();  // 类名
clazz.getSuperclass();  // 父类
clazz.getInterfaces();  // 接口
clazz.getDeclaredMethods(); // 所有方法
clazz.getDeclaredFields();  // 所有字段

七、总结

✅ Class 是“类的说明书”
✅ 是 Java 反射的基础
✅ 写框架(Spring、MyBatis)必用

如果你愿意,我可以:

  • 用 图示解释 Class、对象、JVM 的关系
  • 或结合 Spring / 注解 讲 Class 的实际用途
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手