首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何知道某个类是否扩展了JWindow类?

如何知道某个类是否扩展了JWindow类?
EN

Stack Overflow用户
提问于 2013-08-29 01:19:54
回答 3查看 99关注 0票数 0

有什么方法可以知道类是否扩展了JWindow?例如:

代码语言:javascript
复制
class DialogWindow extends JWindow {
}

如何检查DialogWindow类是否扩展了JWindow类?我需要知道一些组件的父Window,这些组件可能放在某个JPanel上,然后再放在某个JPanel上,以此类推,放在DialogWindow上。当然,我可以将父实例参数传递给某个组件,但也许还有更好的方法呢?

EN

回答 3

Stack Overflow用户

发布于 2013-08-29 01:24:32

尝试像这样使用instanceof:

代码语言:javascript
复制
if(DialogWindow instanceof JWindow){//must return true in your case
...
}
票数 2
EN

Stack Overflow用户

发布于 2013-08-29 01:36:35

正确的方法是(当然要感谢@Ben : ):

代码语言:javascript
复制
Container window = getParent();

    while(!(window instanceof JWindow)){
        window = window.getParent();
    }

JWindow parent = (JWindow) window;

System.out.println(parent.getClass());

输出结果是:class ...DialogWindow超级!

票数 1
EN

Stack Overflow用户

发布于 2013-08-29 01:23:39

你可以试试getClass().getSuperClass()。这里也问了一个类似的问题,How to get the parent base class object super.getClass()

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18494318

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档