繁体   English   中英

如何引用创建对象的对象?

[英]How do I reference the object that created an object?

在Java中,我有一个创建按钮的对象。 在该按钮的onclicklistener中,我想引用创建按钮的对象。

有什么简单的方法可以做到这一点吗?

这取决于你如何构建它。 通常,实例没有对创建它们的实例的引用,除非您将其传入并将其存储在某处。 但是,如果你这样做:

public class YourClass {
    public void foo() {
        JButton b = new JButton();
        b.addActionListener(new ActionListener() {
            @Override public void actionPerformed(ActionEvent e) {
                // Need reference to YourClass here
            }
        });
    }
}

那么你可以参考外YourClass ,使用YourClass.this

就像是:

    class CustomButton extends Button
    {
         private Object parent = null;

         public CustomButton(Object parent) {
             super();
             this.parent = parent;
         }
    }

应该做的伎俩。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM