java lesson 20
1. 要想使用反射,首先需要获得待处理类或对象所对应的Class对象。
2. 获取某个类或某个对象所对应的Class对象的常用的3种方式:
a) 使用Class类的静态方法forName:Class.forName(“java.lang.String”);
b) 使用类的.class语法:String.class;
c) 使用对象的getClass()方法:String s = “aa”; Class<?> clazz = s.getClass();
3. 若想通过类的不带参数的构造方法来生成对象,我们有两种方式:
a) 先获得Class对象,然后通过该Class对象的newInstance()方法直接生成即可:
Class<?> classType = String.class;
Object obj = classType.newInstance();
b) 先获得Class对象,然后通过该对象获得对应的Constructor对象,再通过该Constructor对象的newInstance()方法生成:
Class<?> classType = Customer.class;
Constructor cons = classType.getConstructor(new Class[]{});
Object obj = cons.newInstance(new Object[]{});
4. 若想通过类的带参数的构造方法生成对象,只能使用下面这一种方式:
Class<?> classType = Customer.class;
Constructor cons = classType.getConstructor(new Class[]{String.class, int.class});
Object obj = cons.newInstance(new Object[]{“hello”, 3});
5. Integer.TYPE返回的是int,而Integer.class返回的是Integer类所对应的Class对象。
1. 要想使用反射,首先需要获得待处理类或对象所对应的Class对象。
2. 获取某个类或某个对象所对应的Class对象的常用的3种方式:
a) 使用Class类的静态方法forName:Class.forName(“java.lang.String”);
b) 使用类的.class语法:String.class;
c) 使用对象的getClass()方法:String s = “aa”; Class<?> clazz = s.getClass();
3. 若想通过类的不带参数的构造方法来生成对象,我们有两种方式:
a) 先获得Class对象,然后通过该Class对象的newInstance()方法直接生成即可:
Class<?> classType = String.class;
Object obj = classType.newInstance();
b) 先获得Class对象,然后通过该对象获得对应的Constructor对象,再通过该Constructor对象的newInstance()方法生成:
Class<?> classType = Customer.class;
Constructor cons = classType.getConstructor(new Class[]{});
Object obj = cons.newInstance(new Object[]{});
4. 若想通过类的带参数的构造方法生成对象,只能使用下面这一种方式:
Class<?> classType = Customer.class;
Constructor cons = classType.getConstructor(new Class[]{String.class, int.class});
Object obj = cons.newInstance(new Object[]{“hello”, 3});
5. Integer.TYPE返回的是int,而Integer.class返回的是Integer类所对应的Class对象。
发表评论
-
已前的学习笔记java lesson 19
2012-01-03 13:25 674java lesson 19 1. 当遍历集合或数组时,如果需 ... -
已前的学习笔记java lesson 18
2012-01-03 13:23 770java lesson 18 1. 有这样一个类: // ge ... -
已前的学习笔记java lesson 17
2012-01-03 13:22 682java lesson 17 1. 当向ArrayList添加 ... -
已前的学习笔记java lesson 16
2012-01-02 15:54 766java lesson 16 1. 对于Java中 ... -
已前的学习笔记java lesson 15
2012-01-02 15:52 838java lesson 15 1. 包装类( ... -
已前的学习笔记java lesson 14
2012-01-02 15:49 819java lesson 14 1. 接口中所 ... -
已前的学习笔记java lesson 13
2012-01-02 15:45 612java lesson 13 Java SE Lesson 2 ... -
已前的学习笔记java lesson 12
2012-01-02 15:43 663JAVA lesson 12 1. 类是一种 ... -
已前的学习笔记java lesson 11
2012-01-01 12:51 685Java lesson 11 1. 如果一个类包含了属性与方法 ... -
已前的学习笔记java lesson 11
2011-12-31 15:02 0Java lesson 11 1. 如果一个类包含了属性与方法 ... -
已前的学习笔记java lesson 10
2011-12-31 14:42 695Java lesson 10 1. 类中的属性又叫做成员变量( ... -
已前的学习笔记java lesson 9
2011-12-31 14:17 657Java lesson 9 1. 面向对象 ... -
已前的学习笔记java lesson 8
2011-12-31 14:00 751Java lesson 8 1. break语句:经常用在循环 ... -
已前的学习笔记java lesson 7
2011-12-31 12:00 656Java lesson 7 1. Java中的循环控制语句一共 ... -
已前的学习笔记java lesson 6
2011-12-31 11:31 749Java lesson 6 1. 条件运算符(三元表达式),其 ... -
已前的学习笔记java lesson 5
2011-12-30 22:29 679Java lesson 5 运算符 关系运算符 1.大于(&g ... -
已前的学习笔记java lesson 4
2011-12-30 21:33 699Java lesson 4 运算符(operator) pub ... -
已前的学习笔记java lesson 3
2011-12-30 21:02 580Java lesson 3 Pitfall of primit ... -
已前的学习笔记java lesson 2
2011-12-30 20:02 626Java lesson 2 Primitive date ty ... -
已前的学习笔记java lesson 1
2011-12-30 18:15 605Lesson 1 Java se java standard ...
相关推荐
java技术从入门到精通(孙鑫)学习笔记-Lesson2
java从入门到精通学习笔记-Lesson5(多线程).pdf
java从入门到精通学习笔记-Lesson2(面向对象下).pdf
java技术从入门到精通(孙鑫)学习笔记-Lesson2(面向对象上)
java技术从入门到精通(孙鑫)学习笔记Lesson3
java技术从入门到精通(孙鑫)学习笔记Lesson4
java技术从入门到精通(孙鑫)学习笔记Lesson1
java技术从入门到精通(孙鑫)学习笔记Lesson3(接口)
java技术从入门到精通(孙鑫)学习笔记Lesson10(网络编程)
java技术从入门到精通(孙鑫)学习笔记Lesson 6(数据结构)
─algorithms 算法 ...├─lesson-code 一些课程代码 ├─mvc mvc框架 ├─orm orm框架 ├─spring-annotation spring注解驱动开发 ├─spring-batch ├─springboot-aop springaop使用以及aop应用 │ └─
Java web lesson 1 1.html (hyper text markuo language),超文本标记语言 html 文件的后罪名一般是 .htm .html
用负载均衡技术建设高负载站点 20 大型网站的架构设计问题 25 开源平台的高并发集群思考 26 大型、高负载网站架构和应用初探 时间:30-45分钟 27 说说大型高并发高负载网站的系统架构 28 ...