Java 使用ContentPane';jcs组件功能
Fred Swartz在关于Java GUI编程的说明中写道(更具体地说,是关于访问和使用组件ContentPane的最佳方法) 。。。如果我们[通过调用Java 使用ContentPane';jcs组件功能,java,swing,Java,Swing,Fred Swartz在关于Java GUI编程的说明中写道(更具体地说,是关于访问和使用组件ContentPane的最佳方法) 。。。如果我们[通过调用 getContentPane()在JFrame]上,它实际上是一个 JPanel,但我们确实无法利用它的功能 由JComponent添加 -- 在这种情况下,是什么禁止某人使用JPanel的JComponent功能JPanel扩展了JComponent,因此JPanel不应该不受阻碍地访问JComponent的方法吗?在他关于使用返回组件的评
getContentPane()
在JFrame
]上,它实际上是一个
JPanel
,但我们确实无法利用它的功能
由JComponent
添加
--
在这种情况下,是什么禁止某人使用
JPanel
的JComponent
功能JPanel
扩展了JComponent
,因此JPanel
不应该不受阻碍地访问JComponent
的方法吗?在他关于使用返回组件的评论中进一步阅读:
如果我们将其向下转换为JPanel,我们会创建脆弱的代码,因为与getContentPane()的约定是返回一个容器,并且不能保证将来的版本会继续返回JPanel 这一点解释了为什么我们不应该为了使用JPanel的功能而将返回的JComponent强制转换为JPanel,而不是为什么不能使用JComponent功能。