Java反射——获取Class对象

Java语言中的反射机制是一个对开发者很有用的机制,它可以帮助开发者设计出优越的框架,大大提高开发的效率。

反射机制的入口为Class对象,那如何才能获取到Class对象呢?
方法有以下三种:

  • 类.class
  • 对象.getClass()
  • Class.forName("className")

类.class

这种方式最直接,但仅能获取到我已知的类的Class对象,也就是工程内用过的类的对象都可以通过类.class方式获取其Class对象,但是这种方式有一个不足就是对于未知的类,或者说不可见的类是不能获取到其Class对象的。

对象.getClass()

Java中的祖先类Object提供了一个方法getClass()来获取当着实例的Class对象,这种方式是开发中用的最多的方式,同样,它也不能获取到未知的类,比如说某个接口的实现类的Class对象。

Class.forName("className")

这种方式是可以获取到任何类的Class对象,前提是该类存在,否则会抛出ClassNotFoundException异常。通过这种方式,我们只需要知道类的名称(完全限定名)即可获取到其Class对象(如果存在的话)。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,917评论 18 399
  • Java的Class类是java反射机制的基础,通过Class类我们可以获得关于一个类的相关信息,下面我们来了解一...
    jiangmo阅读 4,419评论 0 3
  • 1. 了解 Java 中的反射 1.1 什么是 Java 的反射 Java 反射是可以让我们在运行时获取类的函数、...
    Ten_Minutes阅读 3,532评论 0 4
  • 一:java概述:1,JDK:Java Development Kit,java的开发和运行环境,java的开发工...
    ZaneInTheSun阅读 7,579评论 0 11
  • 学习Android的同学注意了!!!学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入Android学习交流群...
    kingZXY2009阅读 2,578评论 0 0