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条)

报告相同问题?

悬赏问题

  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致
  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式