在java中,为什么Observable的setChanged()被保护了?
In java, why is Observable's setChanged() protected?
如果 java class,比如说 classA
,正在扩展 classB
,它不能扩展 Observable
。但是如果 setChanged()
函数是 public,而不是受保护的,我们可以使用组合在 classA
.
中创建 Observable
的实例
我想知道使 setChanged()
受到保护的背后的思考过程是什么。
如果 setChanged
等是 public,那么任何事情都可以改变他们。只有对象本身才能更改它们。
要处理扩展 ClassB
的 ClassA
的情况,您可能希望在 ClassA
上有一个方法,即 returns 和 Observable
;在 ClassA
中,observable 是一个扩展 Observable
的内部 class,只有 ClassA
可以访问。
这就是集合和 Iterator
工作的方式。
如果 java class,比如说 classA
,正在扩展 classB
,它不能扩展 Observable
。但是如果 setChanged()
函数是 public,而不是受保护的,我们可以使用组合在 classA
.
Observable
的实例
我想知道使 setChanged()
受到保护的背后的思考过程是什么。
如果 setChanged
等是 public,那么任何事情都可以改变他们。只有对象本身才能更改它们。
要处理扩展 ClassB
的 ClassA
的情况,您可能希望在 ClassA
上有一个方法,即 returns 和 Observable
;在 ClassA
中,observable 是一个扩展 Observable
的内部 class,只有 ClassA
可以访问。
这就是集合和 Iterator
工作的方式。