我正在阅读我的Deitel《 Java How to Program》一书,并遇到了“ 阴影 ”一词。如果允许阴影,那么Java类中有什么情况或目的?
例:
public class Foo { int x = 5; public void useField() { System.out.println(this.x); } public void useLocal() { int x = 10; System.out.println(x); } }
阴影的基本目的是使本地代码与周围的类分离。如果不可用,请考虑以下情况。
API中的Class Foo已发布。在代码中将其子类化,并在子类中使用名为bar的变量。然后,Foo发布更新,并在其类中添加一个称为Bar的受保护变量。
现在,由于您无法预料的冲突,您的课程将无法运行。
但是,请不要故意这样做。仅当您真的不在乎示波器之外发生的情况时,才进行此操作。