6-java反射机制

什么是java反射机制?
    反射机制就是正在运行动态获取当前的类的全部信息
        类能够不用new,使用java反射机制帮你去初始化
        类私有属性,可使用java的放射机制赋值
 
反射机制的做用
    1,反编译:.class-->.java
    2.经过反射机制访问java对象的属性,方法,构造方法等;
java

反射机制的应用场景
    Jdbc 加载驱动-----
    Spring ioc
    框架 
api

反射机制获取类有三种方法框架

 //第一种方式:  
        Classc1 = Class.forName("Employee");  
        //第二种方式:  
        //java中每一个类型都有class 属性.  
        Classc2 = Employee.class;  
           
        //第三种方式:  
        //java语言中任何一个java对象都有getClass 方法  
        Employeee = new Employee();  
        Classc3 = e.getClass(); //c3是运行时类 (e的运行时类是Employee)

反射建立对象的方式
     
函数

   Class<?> forName = Class.forName("com.itmayiedu.entity.User");
        // 建立此Class 对象所表示的类的一个新实例 调用了User的无参数构造方法.
        Object newInstance = forName.newInstance();


实例化有参构造函数
    
spa

    Class<?> forName = Class.forName("com.itmayiedu.entity.User");
        Constructor<?> constructor = forName.getConstructor(String.class, String.class);
        User newInstance = (User) constructor.newInstance("123", "123");


反射建立api
    方法名称    做用
    getDeclaredMethods []    获取该类的全部方法
    getReturnType()    获取该类的返回值
    getParameterTypes()    获取传入参数
    getDeclaredFields()    获取该类的全部字段
    setAccessible    容许访问私有成员
code

 

 

禁止使用反射机制初始化

将构造函数为私有化对象

相关文章
相关标签/搜索