阅读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");

  

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

前两种你必须明确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{}

  

   

转载于:https://www.cnblogs.com/17sui/p/7442358.html

Class类 获取Class对象相关推荐

  1. java 取对象的类_Java中通过Class类获取Class对象的方法详解

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

  2. Android工具类获取上下文对象

    在Android开发中,我们经常会遇到在一个类中获取当前的上下文对象,比如:我们要写一个Notification对象做弹出通知,我们应该写在全局里边.方法:自定义MyApplication继承Appl ...

  3. myBatis MybatisMapperMethod类 获取 Page对象的坑。。

    MybatisMapperMethod 源码: 获取传入的第一个对象,导致在使用分页时,必须将Page放在第一个参数位置... 这里需要循环一下 数组,不能为了方便 留下隐形的坑

  4. java 获取spring对象数组_解析Java中如何获取Spring中配置的bean

    解析Java中如何获取Spring中配置的bean Java中如何获取Spring中配置的bean?下面是由百分网小编为大家整理的解析Java中如何获取Spring中配置的bean,喜欢的可以收藏一下 ...

  5. Java普通类获取Spring框架Bean 的五种方法

    方法一:在初始化时保存ApplicationContext对象 代码: ApplicationContext ac = new FileSystemXmlApplicationContex(" ...

  6. 【Spring】普通类获取Spring容器的bean的方法

    我们通常在项目中获取Spring容器里bean的方式,一般是使用注解的方式(@Autowired.@Resource)直接注入就可以直接使用了,那么如果在一个普通的类里(其他地方使用它的实例是以new ...

  7. 获取SpringBean对象工具类

    #获取SpringBean工具类 SpringBeanUtil代码如下: package com.meeno.wzq.util;import org.springframework.beans.Bea ...

  8. 如何获取java对象的字段名_Java如何获取类对象的字段?

    下面的示例使用反射获取类对象的字段.我们将获取字段名称及其对应的类型.下面显示了三种可用于获取对象字段的方式:Class.getDeclaredFields() Class.getFields() C ...

  9. 在不是Thread类的子类中,如何获取线程对象的名称呢?

    我想要获取main方法所在的线程对象的名称,该怎么办呢? 遇到这种情况,Thread类就提供了一个很好玩的方法: public static Thread currentThread() 返回当前正在 ...

最新文章

  1. 【冷门实用小工具】轻量级流程图工具ClickCharts PRO绿色版,ClickCharts PRO下载【亲测有效】
  2. 这 6 个 SpringBoot 项目够经典!
  3. Oracle与Mysql主键、索引及分页的区别小结
  4. Spring Boot下的Tomcat,你真的会用吗?
  5. apache 服务发布多个项目,只需要更改配置文件(需要设定虚拟主机)
  6. asp.net mvc jquery ajax post,使用ASP.NET MVC在JS文件中设置jQuery的ajax url
  7. element显示true或者false_element-ui轮播的简单实现
  8. 工作86:防抖和节流的问题
  9. mysql的唯一索引UNIQUE
  10. python 线性拟合 图_python线性拟合
  11. 对Table_locks_immediate值的理解
  12. A MULTI-TASK FRAMEWORK WITH FEATURE PASSING MODULE FOR SKIN LESION CLASSIFICATION AND SEGMENTATION
  13. Extjs项目使用技巧————文件上传
  14. 关于人工智能你需要了解的事
  15. 水经注地图下载器注册机机器码过长_微图影像下载参数说明
  16. SFM(Structure from Motion)一点总结
  17. 全新的 Uber 应用设计
  18. 实现软件GPS的软硬件设计讨论
  19. BAT文件的编写及使用
  20. 数据:锁定在智能合约中的MKR供应占比已创下16个月新高

热门文章

  1. 有关于idea快捷键冲突的问题
  2. Shell(3)——截取某些字符、默认值处理
  3. Outlook另类小技巧 批量处理图片大小
  4. hibernate更新部分字段的几种方法
  5. 修复kali grub引导
  6. Tensorflow中文文档
  7. 增加外键时候的一个小错误
  8. C++ initializer_list 类型详解
  9. php server 域名,php 关于如何获取域名或者IP地址的$_SERVER['']
  10. CTFshow——Pwn(1)