Java反射1

Class类

类是对象,是java.lang.Class类的实例对象。

Full full1=new Full();Full这个类也是一个实例对象。

以下是三种表示方式

Class c1=Full.class;

Class c2=full1.getClass();

Class c3=null;

c3=Class.forName("带包名的类名");

c1,c2表示Full类的类类型,类也是对象,是Class类的实例对象,这个对象称为该类的类类型。

通过类的类类型创建该类的对象实例,如下

Full full=(Full)c1.newInstance();

动态加载类

通过new方式创建对象,是静态加载类,编译时刻就要加载所有的类。

Class c=Class.forName(args[0]);

Office o=(Office)c.newInstance();(Office为接口)

o.start;

获取方法信息

Method类是方法对象,一个成员方法就是一个Method对象。

getMethods()方法获取的是所有的public函数,包括父类的。

getDeclaredMethods()方法获取的是所有该类自己声明的函数。

获取成员变量构造函数信息

成员变量也是对象,java.lang.reflect.Field类封装了关于成员变量的操作。

getFields()方法获取的是所有的public的成员变量的信息。

getDeclaredFields获取的是该类自己声明的成员变量信息。

获取构造函数信息

构造函数也是对象,java.lang.Constructor中封装了构造函数的信息。

getConstructors获取了所有的public的构造函数。

getDeclaredConstructors得到所有的构造函数。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 32,469评论 18 399
  • C++文件 例:从文件income. in中读入收入直到文件结束,并将收入和税金输出到文件tax. out。 检查...
    SeanC52111阅读 7,996评论 0 3
  • 一:java概述:1,JDK:Java Development Kit,java的开发和运行环境,java的开发工...
    ZaneInTheSun阅读 7,618评论 0 11
  • 何炅:要得到你必须要付出,要付出你还要学会坚持;如果你真的觉得很难,那你就放弃,但是你放弃了就不要抱怨;我觉得人生...
    梅子梅子阅读 5,400评论 0 1
  • O## 1.记录命令历史环境变量:HISTCONTROL 控制命令历史的记录方式 命令历史的三种记录方式: ign...
    闲睡猫阅读 2,905评论 0 1

友情链接更多精彩内容