首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在我的Swing Goose类中获取NullPointerException

在我的Swing Goose类中获取NullPointerException
EN

Stack Overflow用户
提问于 2011-11-04 07:06:54
回答 1查看 109关注 0票数 0

我想我的_holder和/或_gooseActionnull....下面是实例化_holder_gooseAction的相关代码/类:

Goose.java

代码语言:javascript
复制
public class Goose {
    //Goose class
    private ActionHolder _holder;
    private gooseAction _gooseAction;

    public Goose (JPanel container, GooseAction action, ActionHolder holder) {
        super(container); 
        _holder = holder;
        _gooseAction = _holder.getAction();
        _gooseAction = action;  
    }

    public void react() {
        _gooseAction.stop(); 
        _holder.getAction(); 
        _gooseAction = _holder.getAction(); 
        _gooseAction.setObjective(this); 
        _gooseAction.start();   
    }

ControlPanel.java

代码语言:javascript
复制
public class ControlPanel {
    //top level class
    public ControlPanel() { 
         super();
        _holder = new ActionHolder(_moveAction);
          _drawingPanel = new DrawingPanel(_holder); 
         _gooseAction = new GooseAction();
         _doNothing = new StopBehavior();
         _kingGoose = new FollowBehavior(_kingGoose);
    } 

    private GooseAction _gooseAction;
    private ActionHolder _holder;

    public class ActionHolder {
        private GooseAction _GooseAction;
        public ActionHolder(GooseAction Action) {
            _gooseAction = Action;
        }
        public void setAction(GooseAction GooseAction) {
            _gooseAction = GooseAction;
        }
        public GooseAction getAction() {
            return _gooseAction.copy();
        }
    }

public class ActionButton extends JButton {
    public ActionButton(String string, boolean b, GooseAction action, ActionHolder holder) {
        super(string, b);
        _holder = holder;
        _gooseAction = action;

    }
}

private class ActionListener implements ChangeListener {
    
    public ActionListener(GooseAction action) { 
    }

    public void stateChanged(ChangeEvent e) {
        _holder.setAction(_gooseAction);
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-11-04 07:09:07

代码语言:javascript
复制
if(_holder == null) System.out.println("_holder is null");
if(_gooseAction == null) System.out.println("_gooseAction is null");
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8003049

复制
相关文章

相似问题

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