这是关于 SWT UI 编程中的 GridData 类。为什么 GridData 应该是 final 的?
GridData 的 Java Doc 说它是最终的。我想了解为什么它应该是最终的。
感谢和问候
这是关于 SWT UI 编程中的 GridData 类。为什么 GridData 应该是 final 的?
GridData 的 Java Doc 说它是最终的。我想了解为什么它应该是最终的。
感谢和问候
坦率地说,没有理由不成为最终的,API 程序员的常见行为是制作所有未确定扩展的类。
阅读什么时候应该使用final?并在适用于 java stackoverflow 问题时使用“final”修饰符以获取更多信息。它还与SWT 子类化常见问题解答有关。
巫师是对的。从 API 的角度来看,您总是希望将所有内容都定为最终版本,以防止 API 未来扩展,因为有人在他们的子类化中很有创意......
在这个特定的例子中,原因很可能是设计者在将来可能需要类中的其他成员。例如,在当前版本中有minimumHeight
and ,但没有and也可能有意义...但是如果您或其他人扩展了具有这些确切名称的私人成员怎么办?然后 API 扩展将无法向前兼容,并且许多代码可能会以这种方式破坏。minimumWidth
maximumHeight
maximumWidth
GridData