QQ1252776430 2015-09-11 09:29 采纳率: 22%
浏览 1760
已采纳

Java.Swing中有段代码将接口对象指向空指针,并调用方法,完全看不懂,请牛人指导啊。

Swing库中

AbstractButton类中

protected ButtonModel model= null;

public ButtonModel getModel() {
return model;

public void setActionCommand(String actionCommand) {
getModel().setActionCommand(actionCommand);//getModel反回了一个空指针的接口对象,并调用了其中预定义的方法。
}

ButtonModel不是类是接口:

public interface ButtonModel extends ItemSelectable

public void setActionCommand(String s);//接口中的确预定义好了setActionCommand方法。

我自己模仿这种方式建了测试类,发现会有 java.lang.NullPointerException空指针异常,那么这段代码是什么意思,又为了实现什么需要这么操作啊。

  • 写回答

4条回答 默认 最新

  • threenewbee 2015-09-11 10:59
    关注

    模板模式 -> 策略模式

    http://yangguangfu.iteye.com/blog/815107

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥50 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?