栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java 反射之Class类 (3种实现方式)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java 反射之Class类 (3种实现方式)

反射

java 反射机制就是在程序运行状态中,对于任意一个类,都能够知道这个类的属性和方法。对于任意一个对象,都能够调用到他们的属性和方法。这种动态获取信息以及动态调用对象的方法的功能成为 java 语言的反射机制。

实现方式
  1. Class 类的使用;
  2. 方法的反射;
  3. 成员变量的反射;
  4. 构造函数的反射;
  5. Java 类加载机制;
Class 类
  1. 万事万物皆为对象
    类是对象,类是 java.lang.Class的实例对象,这个对象称为该类的类类型。
  2. 如何创建一个类,同时实例化一个对象,如下:
            Person person = new Person();
    
    如何标识 Person 这个类的实例对象以及 Class 类的实例对象:
    注意 Class 类的构造方法是私有的:
    		
    		private Class(ClassLoader loader) {
        		// Initialize final field for classLoader.  The initialization value of non-null
        		// prevents future JIT optimizations from assuming this final field is null.
       			classLoader = loader;
    		}```
    
三种表现形式 通过对象实例方法获取对象
  // 第一种 personClass为 Person 的类类型
  Class personClass = Person.class;
通过 Object 类的 getClass()方法
   // 第二种
   Class personClass2 = person.getClass();
通过 Class 类里面的 forName()方法
注意:
在开发中一般使用第三种方法,因为第三种接收的是一个字符串路径,将来可以通过配置文件获取,通用性好;
	 try {
            // 第三种
            Class personClass3 = Class.forName("com.easou.noveltouch.business.agreement.Person");
            // 一个类只有一个 Class 的实例对象
            System.out.println(personClass==personClass2);
            System.out.println(personClass==personClass3);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/425184.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号