获取Class类对象


文章目录

一、反射的概念

二、Class类及其特点

三、如何获取Class对象


一、反射的概念:反射是一种新的操作类中成员变量、构造方法、普通方法的机制,如下所示:

public class Test {public static void main(String[] args) {//通过new,创建一个对象的方式去操作Student student = new Student();student.name = "Tom";student.doHomework();try {Class clazz = Class.forName("venus.Student");//得到Student类中的构造方法Constructor constructor = clazz.getConstructor();System.out.println(constructor.getName());} catch (Exception e) {e.printStackTrace();}}
}

运行结果:

二、Class类及其特点

Class类的概念:是Java反射机制的入口,可以说是类的类,能够通过创建Class对象的方式,封装我们所需要的类的信息,如成员变量、构造方法、普通方法,可以通过这个Class对象去操作对应的类

Class类的特点

1、在java.lang包下,因此使用不需要引包

2、被final关键字修饰,不能被继承,因此没有子类

3、继承了Serializable接口

4、构造方法被private修饰,不能通过new关键字创建构造方法

三、如何获取Class对象

public class Test {public static void main(String[] args) {try {//Class.forName(类包名.类名);Class clazz = Class.forName("venus.Student");//2、类名.classclazz = Student.class;//通过类名获取System.out.println(clazz.getName());//3、对象.getClass()clazz = new Student().getClass();//通过System.out.println(clazz.getName());//4、得到基本数据类型对应的class类:基本数据类型包装类.TYPE;如果要获得包装类的class,则是基本数据类型包装类.classclazz = Integer.TYPE;System.out.println(clazz.getName());clazz = Integer.class;System.out.println(clazz.getName());//5、得到数组对应的Class类:元素类别[].classclazz = String[].class;System.out.println(clazz.getName());//6、得到某个类的父类的Class对象://首先得到该类对应的Class对象,如下Student.class,然后调用getSuperclass()方法,则可得到该类父类对应的Class对象,即:子类Class对象.getSuperclass()clazz = Student.class.getSuperclass();System.out.println(clazz.getName());} catch (Exception e) {e.printStackTrace();}}
}

运行结果

如何获取Class类对象?相关推荐

  1. java如何获取Class类对象

    Class类是反射机制的核心之一,下面是几种获取Class类对象的方式: 1.Class.forname Class.forname(),在参数列表内输入类名的全名,因为该语句存在检查时异常,所以对其 ...

  2. java获取实体类对象_java 获取实体类对象属性值的方法

    在java中我们要获得实体类对象的属性,一般情况是将实体类中的属性私有化,然后再对外提供get()与set()方法,然后再获取实体类对象的属性的时候先把对象new出来,再用变量名.get()的方法得到 ...

  3. 获取Class类对象的三种方式

    三种方式分类 类名.class属性 对象名.getClass()方法 Class.forName(全类名)方法 示例代码 public class ReflectDemo {public static ...

  4. 获取Class类对象的几种方式

    获取Class对象的几种方式 一.获取Class对象的四种方式 1.通过类.class获取 Class<Reflect> class1 = Reflect.class; 2.通过对象.ge ...

  5. ActiveRecordBase借助NHibernate的条件获取实体类对象

    ActiveRecordBase.FindAll() 函数其中有一个这样的版本的参数 ActiveRecordBase.FindAll(TargetType As System.Type,Orders ...

  6. java反射获取实体类_java 反射获取类对象的三种方式

    Java反射经常用到的就是获取对象中的属性,那么Java获取类对象就是必不可少的啦! Java实体类: public class ReflexModel { private String code; ...

  7. 类对象和类的对象的区别

    在学习equals类的时候,接触到了类的对象和类对象的概念. 首先,使用eclipse重写equals的时候,会有有这么一段代码 if (getClass() != obj.getClass())re ...

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

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

  9. 将远程服务器获取的linkedhashMap对象转为实体类对象

    微服务中从其他服务获取过来的对象,本来传的是实体类对象 , 但是接受到的参数却是linkedhashMap类型的对象 , 如果强转成自定义的实体类型会报错,因此可以利用ObjectMapper转换. ...

  10. 获取随机数的方式Random类对象的方法 java 0913

    获取随机数的方式Random类对象的方法 java 0913 Random类 实例化这个类得到一个对象 利用对象的方法获取整数 代码 import java.util.Random;public cl ...

最新文章

  1. 疯狂ios讲义疯狂连载之游戏的状态数据模型
  2. Nginx搭建服务器
  3. 河南大学计算机与信息工程学院张磊,张磊-食品与生物工程学院
  4. Linux基础学习七:mysql的安装和配置教程
  5. 今天看到了和我男朋友不一样的程序员!好帅哦!
  6. 欢迎转载中国网站排名
  7. Java多态形式_Java多态
  8. 【博客美化】02.公告栏显示个性化时间
  9. Python 求解斐波那切(三种方法)
  10. Java方法的局限,Java接口有的局限性,它良好而解决了这个问题
  11. iOS开发之--NSPredicate
  12. 147.对链表进行插入排序
  13. 最优传输论文(五十五):A DIRT-T approach to unsupervised domain adaptation
  14. python大数据工程师薪资待遇_2019年就业薪资,凭什么大数据工程师遥遥领先?...
  15. 固态硬盘坏了数据能恢复吗?(已解决)
  16. java连接redis存取数据(详细)
  17. 经常使用的网页开发工具有哪些
  18. BAT机器学习面试1000题系列(第150~279题)
  19. Windows7 个人服务详解及优化
  20. 任天堂游戏服务器系统,买个服务器当电脑主机如何确保买到新版任天堂Switch游戏主机?...

热门文章

  1. 带你快速玩转canvas——写个折线图
  2. Java实例分析:宠物商店
  3. ListCtrl使用
  4. 洛谷 3951 小凯的疑惑
  5. Java EE Servlet 几个path
  6. Telerik RadColorPicker 漂移问题的解决
  7. Button,LinkButton,ImageButton,HyperLink使用
  8. 拓端tecdat|R语言Black Scholes和Cox-Ross-Rubinstein期权定价模型案例
  9. 拓端tecdat|在R语言中轻松创建关联网络
  10. 迁移学习(Transfer Learning)