1. 程式人生 > >201711671235學習《java程式設計》第四周學習總結

201711671235學習《java程式設計》第四周學習總結

教材學習內容總結

1.類(有構造方法無析構方法)

a.類的特徵:封裝    繼承    多型

b.類的定義:class類名  -> 類的宣告,即物件

                   {類體的內容:變數的宣告,方法的定義}  ->類體

程式設計風格:(a)類名用拉丁字母時首字母大寫(b)見名知意

c.成員變數

型別:基本型別,引用型別

有效範圍:整個類,與類體中先後位置無關

程式設計風格:(駝峰習慣)(a)變數名字除了符合標準符規定外,名字首單詞首字母大寫(b)見名知意

d.方法:型別 名稱(引數列表){方法體:可以操作成員變數、區域性變數}

成員變數 區域性變數 引數
整個類內有效 整個方法內有效 宣告位置之後有效(複合語句中在複合語句內有效)

成員變數(有預設值)與區域性變數(無預設值)同名時,成員變數被隱藏(在該方法內失效),此時用this可以呼叫被隱藏的成員變數

e.構造方法與物件的建立(若干構造方法:引數個數,引數型別不同)

(a)名字與類名相同

(b)沒有構造方法時系統提供預設的構造方法

(c)構造方法沒有型別

(d)構造方法可以過載->引數個數/型別不同->多型的表現

f.建立物件

(a)物件的宣告:類名 物件名

(b)為宣告的物件分配變數:new

(c)建立為一個類的物件時分配記憶體空間

(d)一個類可以建立多個不同的物件

(f)類名 物件名=new 類名():分配成員變數空間->構造方法->算出引用

g.使用物件:  .

(a)物件操作自己的變數:物件.變數

(b)物件呼叫類中的方法:物件.方法

h.引數傳值

方法中的引數屬於區域性變數,必須有具體的值

(a)基本資料型別引數:傳值引數(級別低)不改變->被傳值引數(級別高)先改變

(b)引用資料型別引數:傳值引數(引用)改變

->被傳值引數(引用)先改變

一個類宣告的兩個物件有相同的引用,二者具有完全相同的變數

(c)可變引數:放回型別  類名(型別 .....x):x代表引數列表中的最後一個

i.例項成員與類成員

(a)有關鍵字static修飾叫類(靜態)變數,沒有叫例項變數

(b)不同物件有不同例項變數,所有物件共享類變數

(c)通過類名直接訪問類變數:類名/物件.類變數/類方法

例項方法(操作) 類方法(操作)
類變數,例項變數 類變數

(d)如果一個方法中不需操作類中的任何例項變數就定義static方法

j.方法過載

(a)引數個數不同/引數個數相同,但引數列表中對應的某個引數的型別不同

(b)方法放回型別和引數名不作比較

k.this關鍵詞

(a)this關鍵詞出現在類的構造方法中時,代表使用該構造方法所建立的物件

(b)this不能出現在類方法中

l.包

(a)包名的目的是有效的區分名字相同的類,不同Java原始檔中的兩個類名字相同

(b)import語句引入有包名的類

m.訪問許可權

(a)訪問限制符:private、protected、public

(b)在a類中用b類定義的物件

    該物件不能訪問b類的??? 同一個包 不同
private屬性和方法 不可以 不可以
public屬性和方法 可以 可以
friendly、protected屬性和方法 可以

不可以

(c)不能用protected和private修飾類

(d)訪問許可權從高到低:public、protected、friendly、private

n.基本型別的類封裝

(a)基本資料型別:boolean、byte、short、char、int、long、float、double,字串不屬於基本資料型別

(b)型別Value()方法返回該物件含有該型別的資料

o.物件陣列

陣列是相同型別變數按順序組成的集合

p.反編譯:javap.java  eg:javap java.awt.Button

html格式文件:javadoc.exe   eg:javadoc Example.java

教材學習中的問題和解決過程

1.類和物件和c++/c語言不同的地方 -> 檢視面向物件程式設計的課本與java對照

2.理解“一個類宣告的兩個物件如果具有相同的引用,二者就具有完全相同的變數” -> 畫分析圖

3.類變數/方法和例項變數/方法 之間的訪問許可權

程式碼學習中的問題和解決過程

包的用法不會(import....)

主要是演算法需要提高

學習進度條

  程式碼行數(新增/累積) 部落格量(新增/累積) 學習時間(新增/累積) 重要成長
目標 5000行 20篇 400小時 會用java語言獨立設計程式
第一週 13/13 1/1  5/5 學會使用jdk以及對java源程式語句的基本注意事項有所瞭解
第二週 140/143  1/2 10/15 學會java基本資料型別與陣列和c語言/c++在表達和用法上的相同/不同之處
第三週 276/419 1/3 20/35 java中運算子,表示式和語句的表現形式,類的宣告,定義方法
第四周 600/1019 1/4 30/45 類和物件

參考文獻

《java2實用教程(第5版)》