Class对象和Java反射机制
2016-08-23 13:38
323 查看
一 前言
很多书上都说,在java的世界里,一切皆对象。其实从某种意义上说,在java中有两种对象:实例对象和Class对象。实例对象就是我们平常定义的一个类的实例:
二 Class对象的获得
上面说了,Class对象是jvm用来保存对象实例对象的相关信息的,除此之外,我们完全可以把Class对象看成一般的实例对象,事实上所有的Class对象都是类Class的实例。得到一个实例对象对应的Class对象有以下三种方式:1.通过实例变量的getClass()方法:
三 Class对象的使用和反射
JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。简而言之,我们可以从.class逆向到.java(反编译),我们可以通过反射机制来访问一个类java对象的属性,方法,甚至我们可以轻易改变一个私有成员,看代码,我们先来定义一个Cat类:
四 后记
理解好Class对象不仅能让我们更好的认识一切皆对象这个观点,对之后学习泛型,类型擦除都是很有帮助的,而对于java反射机制我们只需在适当的场合利用它即可。:)关于这两个知识的深入学习稍后我会贴出一些有借鉴意义的文章,大家要关注哦~
相关文章推荐
- 四种获取Class对象的方法 Java反射机制
- Java反射机制(创建Class对象的三种方式)
- Class对象和Java反射机制
- Java反射机制(创建Class对象的三种方式)
- 四种获取Class对象的方法 Java反射机制
- Java反射机制(获取Class对象的三种方式+获取Class中的构造函数进行对象的初始化+获取反射类的字段+获取反射类的一般方法)
- Java反射机制——获取Class对象,属性和方法(三)
- 使用BlazeDS实现java与flex传对象时,RemoteClass中包含自己写的类,后台无法转换的问题
- 深入理解Java类型信息(Class对象)与反射机制
- (小工具)Java反射机制实现任意对象集合排序并且获取排列名次的通用程序实践
- Java获得Class对象的几种方式
- 使用dom4j并利用java反射机制将对象集合写入XML
- PHP get_class 返回对象的类名
- python Class:面向对象高级编程 Enum(枚举)、@unique
- 对象(Object)和类(Class)
- 原生Js通过class属性值获取对象
- Java反射机制实现对象属性值的拷贝
- 类名.class与对象.getClass的区别
- Oc(类和对象)(ClassAndObjict)
- java Class对象