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空指針異常,那麼這段代碼是什麼意思,又為了實現什麼需要這麼操作啊。
模板模式 -> 策略模式
http://yangguangfu.iteye.com/blog/815107