反射
文章平均质量分 66
Nazarite_KakaLuoTo
我是一个性格比较内向,有点技术宅,热爱编程,读书,健身,泰拳等。
展开
-
反射的基石(Class类)
1、Java类用于描述一类事物的共性,该类事物有什么属性,没有什么属性,至于这个属性的值是什么,则是由这个类的实例对象来确定的,不同的实例对象有不同的属性值。Jave程序中的各个Java类,它们是否属于同一类事物,是不是可以用同一个类来描述这类事物呢?这个类的名字就是Class,要注意与小写的class关键字的区别。Class类描述了那些方面的信息呢?类的名字,类的访问属性,类所属的包名,字段名称...原创 2018-06-05 23:28:40 · 265 阅读 · 0 评论 -
反射之Constructor类
一、反射1、反射就是把Java类中的各种成分映射成相应的Java类。例如,一个Java类中用一个Class类的对象来表示,一个类中的组成部分:成员变量、方法、构造方法、包等等信息也用一个个的Java类来表示,就像汽车是一个类,汽车中的发动机,变速箱等等也是一个个的类。表示Java类的Class类显然要提供一系列的方法,来获得其中的变量,方法,构造方法,修饰符,包等信息,这些信息就是用相应类的实例对...原创 2018-06-05 23:36:11 · 567 阅读 · 0 评论 -
反射之Field类
1、Field类代表某个类中的一个成员变量2、演示用eclipse自动生成Java类的构造方法3、问题:得到的Field对象是对应到类上面的成员变量,还是对应到对象上的成员变量?类只有一个,而该类的实例对象有多个,如果是与对象关联,那关联的是哪个对象呢?所以字段fieldX代表的是变量X的定义,而不是具体的X变量。4、示例代码供测试的类的代码:package cn.sunft.day01.refl...原创 2018-06-05 23:40:20 · 381 阅读 · 0 评论 -
将任意一个对象中的所有String类型的成员变量所对应的字符串内容中”b”改成”a”
1、被测试的类package cn.sunft.day01.reflect;/** * 定义一个点的类,供反射测试用 * @author sunft * */public class ReflectPoint { private int x; public int y; public String str1 = "ball"; public String str2 = "...原创 2018-06-05 23:44:01 · 880 阅读 · 0 评论 -
反射之Method类
1、Method类代表某个类中的一个成员方法2、得到类中的某一个方法: 例子:Method charAt = Class.forName("java.lang.String").getMethod("charAt", int.class);3、调用方法 通常方式:System.out.println(str.charAt(1)); 反射方式:System.out.println(charAt.in...原创 2018-07-03 22:40:01 · 324 阅读 · 0 评论 -
用反射方式执行某个类中的main方法
1、目标 写一个程序,这个程序能够根据用户提供的类名,去执行该类中的main方法。用普通方式调完后,大家要明白为什么要用反射方式去调用啊?2、问题 启动Java程序的main方法的参数是一个字符串数组,即public static void main(String[] args),通过反射方式来调用这个main方法时,如何为invoke方法传递参数呢?按JDK1.5的语法,整个数组是一个参数,而按...原创 2018-07-03 22:46:07 · 2533 阅读 · 1 评论 -
数组与Object的关系及其反射类型
1、示例代码package cn.sunft.day01.reflect;import java.util.Arrays;/** * 数组与Object的关系及其反射类型 * @author sunft * */public class ArrayTest { public static void main(String[] args) { int[] a1 = new...原创 2018-07-03 22:49:22 · 332 阅读 · 0 评论 -
数组的反射
1、具有相同维度和元素类型的数组属于同一个类型,即具有相同的Class实例对象。2、代表数组的Class实例对象的getSuperClass()方法返回的父类为Object类对应的Class。3、基本类型的一维数组可以被当作Object类型使用,不能当作Object[]类型使用,非基本类型的一维数组,既可以当作Object使用,又可以当作Object[]类型使用。4、Arrays.asList()...原创 2018-07-03 22:51:57 · 511 阅读 · 0 评论 -
利用反射读取配置文件中的具体实现类
该博客用于简单模拟如何利用反射读取配置文件中的具体实现类,一般框架的底层实现原理就是如此的。1、配置文件config.properties文件中的代码:#className=java.util.ArrayListclassName=java.util.HashSet2、实例类ReflectPoint.java中的代码package cn.sunft.day01.reflect;/** *...原创 2018-07-03 23:09:11 · 610 阅读 · 0 评论