20155213 2016-2017-2《Java程序設計》第四周學習總結

20155213 2016-2017-2《Java程序設計》第四周學習總結

教材學習內容總結

繼承與多態

繼承html

  • 繼承避免多個類間重複定義共同行爲,使用關鍵字extends。繼承代表了子類與父類之間的is-a關係,中文稱爲「是一種」。子類繼承父類以後,定義與父類中相同的方法部署,但執行內容能夠相同也能夠不一樣,不一樣時須要「從新定義」,而且能夠改寫父類裏抽象類型 在@Override下重寫

多態java

  • 繼承的多態是指同一父類有不少子類,被不少子類重複使用。
  • 被聲明爲protect的成員,相同包中的類能夠直接存取,不一樣包中的類能夠在繼承後的子類直接存取。

一些繼承裏出現的關鍵字語法小結

關鍵字 解釋
super() 能夠直接調用父類函數,越級調用;
this() 一般指當前對象,調用當前類中函數
extends 後接繼承類名稱,用於繼承
abstract 標示該方法爲抽象方法

接口與多態

接口linux

  • 在Java中可使用interface關鍵字定義行爲。可供其餘類調用該接口,調用時須要關鍵字implement打頭;
  • 操做接口則表示「擁有行爲」,某個類能夠同時擁有不少接口
  • 在子類的操做中能夠用@Override重寫

【註釋】能夠訪問java中super的兩種用法瞭解下super()用法;git

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

  • 問題一:println,printf,print的具體用法,以及格式控制
用法
print 將它的參數顯示在命令窗口,並將輸出光標定位在所顯示的最後一個字符以後
println 將它的參數顯示在命令窗口,並在結尾加上換行符,將輸出光標定位在下一行的開始
printf 格式化輸出的形式
  • 其中printf()繼承了C語言裏的printf()函數,裏面相關格式控制具體參考Java中print、printf、println的區別;
  • 問題二:private,public,無關鍵字,protected的權限比較
  • public、protected、默認、private修飾方法時做用域依次下降public方法做用域爲本類,包內,子類,包外均可protected方法做用域爲本類,包內,子類默認關鍵字修飾的方法的做用域爲本類,包內private方法做用域只是本類
  • 能夠參考public、protected、默認、private關鍵字;

代碼調試中的問題和解決過程

  • 問題:編譯不經過:不兼容,ROle沒法轉換成SwordMan型;

    正則表達式

  • 這是典型的is-a問題,當時在定義SwordMan類時,繼承了Role類,所以,Role和SwordMan類的關係是,Role是SwordMan的父類,SwordMan 是一種(is-a)Role,在代碼裏只需修改後部代碼,改成Role swordman =new SwordMan();就好了ide

代碼託管

  • 代碼提交過程截圖
    函數

  • 代碼量截圖:
    學習

上週考試錯題總結

卷四,第一題

  • (grep)命令能夠進行全文搜索。
  • 解釋:grep是linux中很經常使用的一個命令,主要功能就是進行字符串數據的對比,能使用正則表達式搜索文本,並將符合用戶需求的字符串打印出來。grep全稱是GlobalRegularExpressionPrint,表示全局正則表達式版本,它的使用權限是全部用戶。grep在數據中查找出一個字符串時,是以整行爲單位來進行數據選取的。
  • System.out.println(「」+52+25);的結果是(5225)
  • 解釋:System out println(""+i);等價於System.out.println(i.toString());public String toString()返回該對象的字符串表示。一般,ToString()方法會返回一個「以文本方式表示」此對象的字符串。所以在本題中以字符串形式輸出5225。

其餘

學習進度條

代碼行數(新增/累積) 博客量(新增/累積) 學習時間(新增/累積) 重要成長
目標 5000行 30篇 400小時
第二週 98/100 1/2 30/38 學習java的基礎語法
第三週 302/300 1/3 27/30 學習java對象及封裝
第四周 1032/1000 1/4 36/40 學習了繼承與多態的關係,以及接口的多態操做

參考資料

相關文章
相關標籤/搜索