1.ActionListener是處理被點擊的事件的。
除了像之前每個元素都獨立寫一個listener之外,還可以統一用一個
s.setActionCommand("sec"); m.setActionCommand("min"); s.addActionListener(new SetHandler()); m.addActionListener(new SetHandler()); private final class SetHandler implements ActionListener { public void actionPerformed(ActionEvent e) { if (e.getActionCommand().equals("sec")){...} if (e.getActionCommand().equals("min")){...} } }
2.
implements一般是實現接口。
extends 是繼承類。
接口一般是隻有方法聲明沒有定義的,
那麼java特別指出實現接口是有道理的,因爲繼承就有感覺是父類已經實現了方法,而接口恰恰是沒有實現自己的方法,僅僅有聲明,也就是一個方法頭沒有方法體。因此你可以理解成接口是子類實現其方法聲明而不是繼承其方法。
但是一般類的方法可以有方法體,那麼叫繼承比較合理。
引入包可以使用裏面非接口的一切實現的類。那麼是不是實現接口,這個你自己決定,如果想用到那麼你不是實現,是不能調用這個接口的,因爲接口就是個規範,是個沒方法體的方法聲明集合。我來舉個例子吧:接口可以比作協議,比如我說 一個協議是“殺人”那麼這個接口你可以用 砍刀去實現,至於怎麼殺砍刀可以去實現,當然你也可以用搶來實現殺人接口,但是你不能用殺人接口去殺人,因爲殺人接口只不過是個功能說明,是個協議,具體怎麼幹,還要看他的實現類。
那麼一個包裏面如果有接口,你可以不實現。這個不影響你使用其他類。