在java中,是否有一种(直接)方法使变量能够被访问出类但不能被更改?我在A类中有一个变量,在B类中需要它。我可以将它公开(坏习惯),但我不希望B类能够改变它。有没有办法做到这一点,或者我只需要公开并小心呢?此外,我需要保持从A级内部变更变量的能力,排除最后的变数。Java:变量访问说明符
-2
A
回答
2
是的:你可以提供一个吸气剂。这几乎是它,但这就是你如何假设来做到这一点。
public Type getField() {
return field;
}
1
您可以使用反射来读取私有值。
公共类的Test1 {
private int num;
public Test1(int n){
this.num =n;
}
}
访问私有变量
Field classField = Test1.class.
getDeclaredField("num");
classField.setAccessible(true);
classField.getInt(t);
System.out.println(classField.getInt(t));
相关问题
- 1. Java - 访问说明符
- 2. 访问说明符
- 3. 在java中省略访问说明符
- 4. 关于访问说明符
- 5. Java默认访问说明符可在包之外访问吗?
- 6. 访问说明
- 7. 接口声明的访问说明符
- 8. 重写变量Java继承的说明
- 9. 用Java中的访问修饰符重新声明变量
- 10. Java访问变量
- 11. 访问说明符和访问修饰符有什么区别?
- 12. C++访问说明符理解
- 13. =默认忽略访问说明符?
- 14. 访问说明符和虚函数
- 15. 访问说明符和右值引用
- 16. Apex访问说明符和测试类
- 17. C#内部访问说明符,
- 18. 访问变量声明的变量
- 19. 访问未声明变量
- 20. 变量中的格式说明符?
- 21. Java:易变变量访问
- 22. 需要说明:java中的私有访问修饰符
- 23. 为什么C++类没有类似Java的访问说明符?
- 24. Java中的私有访问说明符用法继承
- 25. java中的访问说明符和代码可重用性
- 26. Java中的默认访问说明符可从类外部访问
- 27. 关于访问说明
- 28. 从FLA库访问带有访问说明符“Internal”的类
- 29. 说明使用类变量?
- 30. 我应该像对Java说明符一样将相同的做法应用于PHP访问说明符吗?
请参考,http://stackoverflow.com/questions/14324805/class-variable-public- access-read-only-but-private-access-rw – Prabhakar
http://stackoverflow.com/questions/8151342/do-we-have-a-readonly-field-in-java-which-is-set-able-在范围内的C http://stackoverflow.com/ques tions/14324805/class-variable-public-access-read-only-but-private-access-r-w – Prabhakar