java反射

目录

1.什么是反射?

2.如何得到类对象

3.根据类得到类名(全限定名/全路径名)

 4.根据类得到类的属性

 5.根据类得到类的方法

 6.根据类得到类的构造方法

7.根据类得到类的实现接口列表


1.什么是反射?

反射是一种机制,利用反射机制动态的实例化对象、读写属性、调用方法、构造函数。

2.如何得到类对象

一切反射相关的代码都从获得类对象开始
   3种获取方式:
     2.1 类名.class;
     2.2 对象名.getClass();
     2.3 Class.forName(全限定名/全路径名)

3.根据类得到类名(全限定名/全路径名)

    1)cName.getName();            -->获取全限定名
    2)cName.getSimpleName();             -->获取类名
    3)cName.getPackage();             -->获取包名

 4.根据类得到类的属性


    Field field=cla.getField(“属性名”);

    field.getName();            -->获取属性名            
    filed.getType();            -->获取属性类型        
    field.getModifiers();            -->获取属性访问修饰符    
    field.set(Object,Object);         -->设置属性值,参数1:要设置属性所在对象;参数2:要设置的值;    
    field.get(Object);            -->获取属性值,参数:要获取属性值的对象                
    field.getDeclaredField(“属性名”);    -->获取单个属性(私有、公有、受保护、默认、静态)    
    field.getDeclaredFields();        -->获取所有属性(私有、公有、受保护、默认、静态)

 5.根据类得到类的方法

 //无参无返回、无参有参会、有参无返回、有参有返回
    cla.getMethod();            -->获取单个公有方法
    cla.getDeclaredMethod();        -->获取当个方法(包括私有、受保护、默认、公有)
    cla.getMethods();            -->获取所有公有方法
    cla.getDeclaredMethods();        -->获取所有的方法(包括私有、受保护、默认、公有)

 6.根据类得到类的构造方法

    cla.getConstrutor();            -->获取单个公有构造方法
    cla.getDeclaredConstrutor();        -->获取单个构造方法(包括私有、受保护、默认、公有)
    cla.getConstrutors();            -->获取所有的公有构造方法
    cla.getDeclaredConstrutors();        -->获取所有的构造方法(包括私有、受保护、默认、公有)

7.根据类得到类的实现接口列表

Class[] interface=cla.getInterfaces();    -->获取类对象中所有实现接口列表

你可能感兴趣的:(java,servlet,服务器,java)