黑马程序员——反射Constructor类
来源:互联网 发布:淘宝客推广软文范例 编辑:程序博客网 时间:2024/06/01 08:02
——- android培训、java培训、期待与您交流! ———-
反射就是把java类中的各种成分映射成相应的java类
例如:
一个java类中用一个Class类的对象来表示,一个类中的组成部分: 成员变量,方法,构造方法,包等等
比如
汽车 是一个类
汽车中 的发动机, 变速箱…… 也是一个一个类简单的说 java中的Class 需要提供一些方法,来获取其中 变量,构造方法,修饰符,包……这些信息就用相应类的实例对象来表示
比如 Field Method Contructor Package ……
System.exit;//方法一:System.getProperties();//方法二:Method//方法类别Method//mehthodObj1 具体的方法一
Constructor类得到某个类所有的构造方法:例子: Constructor[]constructor= //所有的构造方法放在一个数组里面Class.forName("java.lang.String").gerConstructor();得到某一个构造方法例子: Constructor constructor= Class.forName("java.lang.String").gerConstructor(SringBuffer.class);//gerConstructor();得到某一个构造方法//获得方法是要用到类型创建实例对象通常方式:String str = new String(new StringBuffer("abc"));反射方式:String str = (String)constructor.newInstance(new StringBuffer("abc"));//调用获得的方法时要用到上面相同类型的实例对象Class.newIndtance()方法例子:String obj = (String)Class.forName("java.lang,String").newInstance();该方法内部先得到默认的构造方法,然后用构造方法创建实例对象该方法内部的具体代码体现是怎么写的? 用到了缓存机制来保存默认的构造方法的实例对象。
package com.itheima;import java.lang.reflect.Constructor;public class ReflectTest { public static void main(String[] args) throws Exception{ // TODO Auto-generated method stub { String str1 = "abc"; Class cls1 = str1.getClass(); Class cls2 = String.class; Class cls3 = Class.forName("java.lang.String"); System.out.println(cls1 == cls2); System.out.println(cls2 == cls3); System.out.println(cls1.isPrimitive()); System.out.println(int.class.isPrimitive()); System.out.println(int.class == Integer.class); System.out.println(int.class == Integer.TYPE); System.out.println(int[].class.isPrimitive()); System.out.println(int[].class.isArray()); //new String(new StringBuffer("abc")); //【ALT+/】提供内容的辅助,不要为记不全方法和属性名称 Constructor constructor1 = String.class.getConstructor(StringBuffer.class);//方法-类型一致StringBuffer String str2 = (String)constructor1.newInstance(new StringBuffer("abc"));//传值-类型一致StringBuffer System.out.println(str2.charAt(2)); } }}
——- android培训、java培训、期待与您交流! ———-
0 0
- 黑马程序员——反射Constructor类
- 黑马程序员——反射之Constructor构造器
- 黑马程序员——Java基础---反射Class类、Constructor类、Field类
- 黑马程序员——Java基础---反射Class类、Constructor类、Field类
- 黑马程序员---反射(Class类、Constructor类、Field类)
- 黑马程序员_Java高新技术之反射 Constructor类
- 黑马程序员——反射——Class、Constructor、Field、Method及简单框架原理
- 黑马程序员---初识反射,Class,Constructor,Field
- 黑马程序员------反射技术Constructor,Field,Method
- 黑马程序员-反射-constructor-feld类-Method-数组的反射-反射的作用
- 黑马程序员—反射
- 黑马程序员—反射
- 黑马程序员—反射
- 黑马程序员—反射
- 黑马程序员—反射
- 黑马程序员—反射
- 黑马程序员—反射
- 黑马程序员—反射
- FIFA 16 comes in with FIFA trainer that will try
- 实习日志-第3天
- OnGlobalLayoutListener获得一个视图的高度
- C++ 虚函数与纯虚函数的区别
- 设计概念澄清
- 黑马程序员——反射Constructor类
- ubuntu14全屏设置
- JAVA基础知识之冒泡排序
- 根据屏幕判断设备型号
- PHP 写守护进程,实例分享
- git查看某个文件的修改历史
- limits.conf介绍
- 扩展GridView控件——为内容项添加拖放及分组功能
- 开始iOS 7中自动布局教程(二)