2019-09 Java基础之—反射

为什么会对反射有疑问:

牛客网

使用了private修饰以后只有两种情况可以使用:

1.在本类中可以访问
2.利用反射可以访问

提出疑问:反射是什么?

反射:将类的各个组成部分(成员变量、构造方法、成员方法)封装为其他对象,称为反射机制。

好处:
1.可以在程序运行过程中,操作对象。
2.可以降低耦合性,提高程序可扩展性。

那么,怎么通过反射访问private(私有)的属性和方法呢?

getDeclaredMethod()返回的Method对象可以是非public的。
在使用前要通过AccessibleObject类(Constructor、 Field和Method类的基类)中的setAccessible()方法来抑制Java访问权限的检查。

你可能感兴趣的:(2019-09 Java基础之—反射)