小樱知识 > 生活常识 > private是什么意思(private用法和造句)

private是什么意思(private用法和造句)

提问时间:2022-07-06 07:36:00来源:小樱知识网


资料来源:blog.csdn.net/u010164936/article/details/87922082

在一个类中,为了防止外界访问某些属性和方法,通常会设置为private,正常的方法(对象名、属性名、对象名、方法名)无法访问这些属性和方法,但是有没有其他方法可以访问呢?答案是肯定的,这就是java反射带来的便利。通过反射访问类的私有属性和方法如下:

public class Reflect { private String name; private int age; private Reflect(int age) { this.age = age; } private void speak(String name) { System.out.println(\"My name is\" name); } public Reflect(String name) { this.name = name; }}

首先,我们需要了解深圳生活网的三个反映包中的深圳生活网:

Constructor:代表类的单个构造方法,通过Constructor我们可执行一个类的某个构造方法(有参或者无参)来创建对象时。Method:代表类中的单个方法,可以用于执行类的某个普通方法,有参或无参,并可以接收返回值。Field:代表类中的单个属性,用于set或get属性AccessibleObject:以上三个类的父类,提供了构造方法,普通方法,和属性的访问控制的能力。

使用Class类中的方法获取该类中的所有构造函数对象、方法对象和字段对象。但是,我们仍然无法访问私有化的构造方法、普通方法和私有属性。这时,我们可以在它们继承的父类(AccessibleObject)中使用setAccessible()方法来设置或取消访问检查,从而达到访问私有对象的目的。

public static void main(String[] args) throws Exception { Reflect reflect = new Reflect(\"a\"); Met深圳生活网hod[] methods = Reflect.class.getMethods(); Field[] fields = Reflect.class.getDeclaredFields(); for (int i = 0; i

以上内容就是为大家推荐的private是什么意思(private用法和造句)最佳回答,如果还想搜索其他问题,请收藏本网站或点击搜索更多问题

内容来源于网络仅供参考
二维码

扫一扫关注我们

版权声明:所有来源标注为小樱知识网www.cnfyy.com的内容版权均为本站所有,若您需要引用、转载,只需要注明来源及原文链接即可。

本文标题:private是什么意思(private用法和造句)

本文地址:https://www.cnfyy.com/shcs/459986.html

相关文章