課程總結
1.基礎語法:Java關鍵字,標識符,類型轉換、直接量、變量、循環語句(if,for,switch)、方法、運算符、遞歸。
2.面向對象編程:面向對象設計思想、對象與內存、方法重載、對象創建使用、abstrsct的使用、static的使用、package和import的運用、對象、繼承、轉型、多態、抽象類、接口等基本的知識點。
3.異常處理:try{...}catch(Exception e){...}、異常的分類、方法異常的拋出、自定義異常。
4.數組:基本的數組操作、二維數組的使用。
5.常用類:String類、StringBuffer類、Math類、File類等等。
6.文件與數據流:輸入流 java.io.InputStream 、輸出流 java.io.OutputStream。
7.線程:線程的兩種實現方式。多線程的實現主要是通過繼承Thread類或實現Runnable接口。
8.抽象方法,抽象概念,抽象方法和抽象類的關系:
(1)有抽象方法的類,一定是抽象類;抽象類不一定有抽象方法
(2)當子類繼承抽象類時,必須要將抽象類中的抽象方法全部實現(或者稱為重寫),否則子類依然是抽象類
(3)因為子類是繼承父類全部內容,所以也就相當于子類中也有了抽象方法,通過重寫,可以將抽象方法覆蓋。
(4)抽象類的特點:必須有abstract關鍵字修飾,不可以通過new來創建對象,抽象方法不可以寫函數體。
9.this:是當前對象的引用
(1)this調用本類中的屬性,也就是類中的成員變量,如果本類沒有此屬性則從父類中繼續查找;
(2)this調用本類中的其他方法,如果本類沒有此方法則從父類中繼續查找;
(3)this調用本類中的其他構造方法,調用時要放在構造方法的首行。
10.static
(1)static方法就是沒有this的方法,可以在沒有創建任何對象的前提下,僅僅通過類本身來調用static方法。
(2)非static聲明的方法可以去調用static聲明的屬性或方法的。但是static聲明的方法是不能調用非static類型聲明的屬性或方法的。
11.對象數組
(1)先定義,再開辟空間
類名稱 對象數組名[] = null;
對象數組名 = new 類名稱[長度];
(2)定義并開辟數組
類名稱 對象數組名[] = new 類名稱[長度];
12.繼承
(1)子類繼承父類的成員變量
當子類繼承了某個類之后,便可以使用父類中的成員變量,但是并不是完全繼承父類的所有成員變量。具體的原則如下:
1)能夠繼承父類的public和protected成員變量;不能夠繼承父類的private成員變量;
2)對于父類的包訪問權限成員變量,如果子類和父類在同一個包下,則子類能夠繼承;否則,子類不能夠繼承;
3)對于子類可以繼承的父類成員變量,如果在子類中出現了同名稱的成員變量,則會發生隱藏現象,即子類的成員變量會屏蔽掉父類的同名成員變量。如果要在子類中訪問父類中同名成員變量,需
要使用super關鍵字來進行引用。
(2)子類繼承父類的方法
同樣地,子類也并不是完全繼承父類的所有方法。
1)能夠繼承父類的public和protected成員方法;不能夠繼承父類的private成員方法;
2)對于父類的包訪問權限成員方法,如果子類和父類在同一個包下,則子類能夠繼承;否則,子類不能夠繼承;
3)對于子類可以繼承的父類成員方法,如果在子類中出現了同名稱的成員方法,則稱為覆蓋,即子類的成員方法會覆蓋掉父類的同名成員方法。如果要在子類中訪問父類中同名成員方法,需要使用
super關鍵字來進行引用。
13.方法的覆寫和重載
(1)overload(重載):在同一類或者有著繼承關系的類中,一組名稱相同,參數不同的方法組。本質是對不同方法的稱呼。
重載的標志:方法名相同,參數不同(個數或者類型),與返回值無關。
(2)override(覆寫):存在繼承關系的兩個類之間,在子類中重新定義了父類中存在的方法。本質是針對同一個方法,給出不同的實現。
覆寫的標志:子承父類,對相同的方法有不同的實現。
14.final關鍵字
final關鍵字可以用來修飾類、方法和變量
(1)修飾:當用final修飾一個類時,表明這個類不能被繼承。
(2)修飾方法:用final方法的原因有兩個。第一個原因是把方法鎖定,以防任何繼承類修改它的含義;第二個原因是效率。
(3)修飾變量:對于一個final變量,如果是基本數據類型的變量,則其數值一旦在初始化之后便不能更改;如果是引用類型的變量,則在對其初始化之后便不能再讓其指向另一個對象。
15.抽象類
由于抽象類不能實例化對象,所以抽象類必須被繼承,才能被使用。
抽象類表示的是一種繼承關系,一個類只能繼承一個抽象類,而一個類卻可以實現多個接口。
16.接口
(1)抽象:只籠統的描述該對象的功能,不提供實現的方法;
(2)不能創造對象:接口是沒有方法體的,不能實例化;
(3)多繼承:一方面接口可以繼承多個接口,另一方面,類也可繼承多個接口,且類能在單繼承類后再繼承多個接口,但接口是不能繼承類的。
17.異常
處理:
try{
//有可能出現異常的語句
}catch(異常類 異常對象){
}
(1)throws
使用throws聲明的方法表示此方法不處理異常,而交給方法的調用處進行處理
throw
(2)與throws關鍵字不同的是,可以直接使用throw關鍵字拋出一個異常,拋出時直接拋出異常類的實例化對象即可。
18.文件
createNewFile(); 創建新文件
delete(); 刪除一個指定文件
public String[]list(); 列出全部名稱,返回一個字符串數組
public File[]listFiles(); 列完整的路徑,返回一個File對象數組
19.Swing
JFrame窗體是一個容器,它是Swing程序中各個組件的載體。
常用操作方法:
創建一個窗體:JFrame f = new JFrame;
設置窗體大小:f.setSize(int width , int height);
設置窗體背景顏色:f.setBackground(Color.顏色);
設置窗體顯示位置:f.setLocation(int x, int y);
顯示窗體:f.setVisible(true);
20.布局管理器
(1)BorderLayout(邊框布局管理器)是 Window、JFrame 和 JDialog 的默認布局管理器。邊框布局管理器將窗口分為 5 個區域:North、South、East、West 和 Center。
(2)FlowLayout(流式布局管理器)是 JPanel 和 JApplet 的默認布局管理器。FlowLayout 會將組件按照從上到下、從左到右的放置規律逐行進行定位。與其他布局管理器不同的是,FlowLayout 布局管理器不限制它所管理組件的大小,而是允許它們有自己的最佳大小。
(3)CardLayout 布局管理器將容器分成許多層,每層的顯示空間占據整個容器的大小,但是每層只允許放置一個組件。
(4)GridLayout(網格布局管理器)為組件的放置位置提供了更大的靈活性。它將區域分割成行數(rows)和列數(columns)的網格狀布局,組件按照由左至右、由上而下的次序排列填充到各個單元格中。
(5)絕對布局 通過坐標指定組件放置的位置,窗體大小改變,組件位置也不會改變
21.完善窗體
(1)標簽組件JLabel,更改JLabel的文字樣式,使用到Font類,在JLabel中設置圖片,使用Imagelcon類
(2)按鈕組件JButton,建立一個按鈕即new JButton()即可
(3)監聽:
a.鍵盤監聽
使用KeyListener接口
b.鼠標監聽
使用MouseListener接口,其中MouseEvent中有getButton(),getX(),getY()等方法
c.單選鈕:JRadioButton及事件處理
d.復選框:JCheckBoxji事件處理JCheckBox();創建文本對象其事件處理也是用ItemListener接口
e.列表框:JList及事件處理
(4)菜單組件:JMenu、JMenuBar、JMenuItem可實現簡單的菜單外觀,使用事件監聽可對應作出一些功能的實現

浙公網安備 33010602011771號