1.接口
1.1接口的定義
定義接口的關(guān)鍵字:interface
定義接口的格式:
public interface 接口名? extends 接口,... {
//定義常量(常量名Java的命名規(guī)則要求是每一個(gè)字母都要大寫)
public static final 數(shù)據(jù)類型 常量名 = 值;
//定義抽象方法
public abstract 返回值類型? 方法名(數(shù)據(jù)類型 參數(shù)名,...);
}
1.2接口與類的區(qū)別:
1) 接口中只能定義抽象方法凝化,這些方法默認(rèn)為 public abstract 的狭郑,因而在聲明方法時(shí)可以省略這些修飾符沛申。試圖在接口中定義實(shí)例變量郁岩、非抽象的實(shí)例方法及靜態(tài)方法,都是非法的睦尽。
2) 接口中沒(méi)有構(gòu)造方法器净,不能被實(shí)例化。
3) 一個(gè)接口不實(shí)現(xiàn)另一個(gè)接口当凡,但可以繼承多個(gè)其他接口山害。接口的多繼承特點(diǎn)彌補(bǔ)了類的單繼承。
4)接口只有一種訪問(wèn)修飾符就是public沿量,默認(rèn)提供的關(guān)鍵字是public浪慌、static、final朴则、abstract权纤。
1.3接口的作用:
1. 需要實(shí)現(xiàn)多態(tài)
2. 要實(shí)現(xiàn)的方法(功能)不是當(dāng)前類族的必要(屬性).
3. 要為不同類族的多個(gè)類實(shí)現(xiàn)同樣的方法(功能).
2.抽象類
抽象類的定義
定義抽象的關(guān)鍵字abstract class
public abstract class Shape {
//可以定義類所有的內(nèi)容
//可以定義接口中所有的內(nèi)容
}
抽象類當(dāng)做是接口和類的集合。
抽象類不能實(shí)例化對(duì)象乌妒。
3.事件監(jiān)聽機(jī)制
1.事件源對(duì)象:接收動(dòng)作的組件對(duì)象
有哪些可以成為事件源對(duì)象汹想?? 所有的容器組件和元素組件
界面上會(huì)有很多的組件,那么如何確定誰(shuí)是事件源對(duì)象撤蚊?
根據(jù)你的動(dòng)作來(lái)決定古掏,你的動(dòng)作發(fā)生在哪一個(gè)組件上,那么該組件就是事件源對(duì)象侦啸。
2.事件監(jiān)聽方法:監(jiān)聽事件源對(duì)象上是否有動(dòng)作發(fā)生
addActionListener(ActionListener l);
監(jiān)聽類似按鈕組件上是否有鼠標(biāo)點(diǎn)擊動(dòng)作的方法或者是監(jiān)聽類似輸入框組件上是否
有鍵盤的回車動(dòng)作的方法槽唾,如果有席镀,則捕獲動(dòng)作以及相關(guān)的信息,交給
ActionLIstener參數(shù)對(duì)象進(jìn)行處理夏漱。
addKeyListener(KeyListener l);
監(jiān)聽事件源對(duì)象上是否有鍵盤按鍵按下,釋放和敲擊動(dòng)作顶捷,如果有則
捕獲動(dòng)作以及相關(guān)的信息挂绰,交給KeyListener參數(shù)對(duì)象進(jìn)行處理。
addMouseListener(MouseListener l);
監(jiān)聽事件源對(duì)象上是否有鼠標(biāo)的進(jìn)入服赎、按下葵蒂、釋放、點(diǎn)擊和離開動(dòng)作重虑,如果有則
捕獲動(dòng)作以及相關(guān)的信息践付,交給MouseListener參數(shù)對(duì)象進(jìn)行處理。
addMouseMotionListener(MouseMotionListener l);
監(jiān)聽事件源對(duì)象上是否有鼠標(biāo)的移動(dòng)和拖動(dòng)動(dòng)作缺厉,如果有則
捕獲動(dòng)作以及相關(guān)的信息永高,交給MouseMotionListener參數(shù)對(duì)象進(jìn)行處理。
addFocusListener(FocusListener l);
監(jiān)聽事件源對(duì)象上是否有組件獲得或失去鍵盤焦點(diǎn)動(dòng)作提针,如果有則
捕獲動(dòng)作以及相關(guān)的信息命爬,交給FocusListener參數(shù)對(duì)象進(jìn)行處理。
addChangeListener(ChangeListener l);
addPopupMenuListener(PopupMenuListener l);
3.事件接口(事件處理類):事件監(jiān)聽方法就會(huì)將動(dòng)作交給事件處理類來(lái)來(lái)處理
ActionListener 處理按鈕的點(diǎn)擊動(dòng)作和輸入框的回車動(dòng)作
KeyListener 處理鍵盤按鍵按下辐脖,釋放和敲擊動(dòng)作
MouseListener 處理鼠標(biāo)按下饲宛、釋放、點(diǎn)擊嗜价、進(jìn)入和離開動(dòng)作
MouseMotionListener 處理鼠標(biāo)移動(dòng)和拖動(dòng)動(dòng)作
FocusListener 處理獲取焦點(diǎn)和失去焦點(diǎn)的動(dòng)作
ChangeListener 處理組件狀態(tài)改變的動(dòng)作
PopupMenuListener 處理彈出菜單可見(jiàn)艇抠、不可見(jiàn)、取消的動(dòng)作