我经常发现自己想要做到这一点。当你想存储一些有用的信息或额外的状态时,它可能非常有用。为什么许多SWT控件不允许继承子类?
所以我的问题是,有一个很好/强烈的原因,为什么这是禁止的?
感谢
编辑: 非常感谢所有这些问题的答案。所以这听起来像是没有对或错的答案。
假设我接受这样的事实,这些类是不能被继承,什么的不打标控制类决赛,但禁止子类的点 - 有效地从编译时降级异常/错误运行时?
编辑^ 2: 看到我自己对此的回答:显然,这些类是可覆盖的,但需要overrider的明确确认。
感谢继承
但是Eclipse本身以这种方式创建了我们的'Shell`类(从`Shell`继承),然后重写`checkSubclass() `空身。我们这样做是否好(安全)?我有两个shell(`Shell_1`,`Shell_2`)。 `Shell_1`是`Shell_2`的父亲。我只想扩展`Shell_2`的`Shell`类,这样我就可以在`Shell_2`的构造函数中添加控件了。这是错误的方式吗? – 2011-12-05 10:15:37