Java中通过Class类获取Class对象的方法详解

发布时间 - 2026-01-11 02:59:25    点击率:

前言

本文主要给大家介绍的是关于Java通过Class类获取Class对象的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍:

阅读API的Class类得知,Class 没有公共构造方法。Class 对象是在加载类时由 Java 虚拟机以及通过调用类加载器中的 defineClass 方法自动构造的

获取Class对象的三种方式(实例采用Person类)

方式1:通过Object类的getObject()方法   

Person p = new Person();
Class c = p.getClass();

方式2: 通过 类名.class 获取到字节码文件对象(任意数据类型都具备一个class静态属性,看上去要比第一种方式简单)。

Class c2 = Person.class;

方式3: 通过Class类中的方法(将类名作为字符串传递给Class类中的静态方法forName即可)。  

Class c3 = Class.forName("Person");

注意:第三种和前两种的区别

前两种你必须明确Person类型.

后面是指定这种类型的字符串就行.这种扩展更强.我不需要知道类名.我只提供字符串,按照配置文件加载就可以了

代码演示:

public class ReflectDemo {
 public static void main(String[] args) throws ClassNotFoundException {
  //通过Object类的getObject()方法   
  Person p = new Person();
  Class c1 = p.getClass();
  System.out.println(c1);
   
  //类名.class 获取到字节码文件对象
  Class c2 =Person.class;
  System.out.println(c2);
   
  //通过Class类中的方法forName()
  Class c3 = Class.forName("cn.shiqi.demo1.Person");
  System.out.println(c3);
 }
}
class Person{
 
}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。


# java  # 获取class对象  # class对象  # 通过class获取对象  # Java反射(Class类  # Class对象获取)  # 基于Java class对象说明、Java 静态变量声明和赋值说明(详解)  # Java反射获取class对象方式解析  # 简单了解JAVA中类、实例与Class对象  # Java获取Class对象的几种方式小结  # Java中获取Class对象的三种方式详解  # 关于java的九个预定义Class对象  # Java中获取Class对象的3种方式代码示例  # 两种  # 类中  # 加载  # 的是  # 是在  # 我不  # 相关内容  # 说了  # 我只  # 不多  # 就行  # 给大家  # 三种  # 要比  # 这篇文章  # 谢谢大家  # 你必须  # 更强  # 第一种  # 配置文件 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布  php485函数参数是什么意思_php485各参数详细说明【介绍】  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制  Laravel如何使用查询构建器?(Query Builder高级用法)  如何快速查询域名建站关键信息?  Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】  独立制作一个网站多少钱,建立网站需要花多少钱?  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  如何在 Go 中优雅地映射具有动态字段的 JSON 对象到结构体  php后缀怎么变mp4格式错误_修改扩展名提示格式不对怎么办【技巧】  Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧  阿里云网站搭建费用解析:服务器价格与建站成本优化指南  高性价比服务器租赁——企业级配置与24小时运维服务  Win11任务栏卡死怎么办 Windows11任务栏无反应解决方法【教程】  Laravel如何使用Eloquent进行子查询  Laravel如何与Inertia.js和Vue/React构建现代单页应用  Laravel如何配置Horizon来管理队列?(安装和使用)  Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】  laravel怎么通过契约(Contracts)编程_laravel契约(Contracts)编程方法  Laravel Sail是什么_基于Docker的Laravel本地开发环境Sail入门  Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】  香港服务器租用费用高吗?如何避免常见误区?  如何快速生成专业多端适配建站电话?  php结合redis实现高并发下的抢购、秒杀功能的实例  详解阿里云nginx服务器多站点的配置  黑客如何利用漏洞与弱口令入侵网站服务器?  如何在香港免费服务器上快速搭建网站?  Android okhttputils现在进度显示实例代码  Laravel如何使用Service Container和依赖注入?(代码示例)  如何注册花生壳免费域名并搭建个人网站?  微信小程序制作网站有哪些,微信小程序需要做网站吗?  IOS倒计时设置UIButton标题title的抖动问题  Laravel集合Collection怎么用_Laravel集合常用函数详解  如何用PHP快速搭建高效网站?分步指南  高端企业智能建站程序:SEO优化与响应式模板定制开发  iOS中将个别页面强制横屏其他页面竖屏  高防服务器租用首荐平台,企业级优惠套餐快速部署  详解jQuery停止动画——stop()方法的使用  JavaScript如何实现音频处理_Web Audio API如何工作?  Laravel Octane如何提升性能_使用Laravel Octane加速你的应用  Laravel如何设置定时任务(Cron Job)_Laravel调度器与任务计划配置  教学论文网站制作软件有哪些,写论文用什么软件 ?  如何快速辨别茅台真假?关键步骤解析  Laravel如何为API编写文档_Laravel API文档生成与维护方法  如何用PHP快速搭建CMS系统?  西安专业网站制作公司有哪些,陕西省建行官方网站?  如何在建站之星绑定自定义域名?  Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置  Laravel如何实现用户密码重置功能?(完整流程代码)