日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > java >内容正文

java

20155314 2016-2017-2 《Java程序设计》第4周学习总结

發(fā)布時(shí)間:2024/1/8 java 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 20155314 2016-2017-2 《Java程序设计》第4周学习总结 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

20155314 2016-2017-2 《Java程序設(shè)計(jì)》第4周學(xué)習(xí)總結(jié)

教材學(xué)習(xí)內(nèi)容總結(jié)

  • 理解封裝、繼承、多態(tài)的關(guān)系
  • 理解抽象類與接口的區(qū)別
  • 掌握S.O.L.I.D原則
  • 了解模式和設(shè)計(jì)模式
  • 能正確覆蓋方法
  • 了解垃圾回收機(jī)制
  • 掌握Object類
  • 掌握enum

get到的重點(diǎn)

第六章 繼承與多態(tài)

  • 相關(guān)概念:
    • 繼承:避免多個(gè)類間重復(fù)定義共同行為
    • 子類與父類:
      • 父類:
        • 對(duì)有著共同特性的多類事物,進(jìn)行再抽象成一個(gè)類,這個(gè)類就是多類事物的父類
        • 父類的意義在于可以抽取多類事物的共性
      • 子類既可以是一個(gè)子類,也可以是一個(gè)父類;父類既可以是一個(gè)父類,也可以是一個(gè)子類
      • 在Java中只有單一繼承,即子類只能繼承一個(gè)父類
      • 子類與父類間會(huì)有is-a的關(guān)系(子類 is a 父類
    • is-a
    • 多態(tài):
      • 繼承可以復(fù)用代碼,更大的用處是實(shí)現(xiàn)「多態(tài)」
      • 封裝是繼承的基礎(chǔ),繼承是多態(tài)的基礎(chǔ)
      • 「用父類聲明對(duì)象引用,用子類生成對(duì)象」就有了多態(tài)
    • 覆蓋:子類中有和父類中可訪問(wèn)(可繼承到子類)的同名同返回類型同參數(shù)表的方法,就會(huì)覆蓋從父類繼承來(lái)的方法
    • 抽象方法、抽象類:
      • Java中有抽象方法的類一定是抽象類,但抽象類中的方法不一定都是抽象方法
      • 抽象類不能使用new生成對(duì)象
  • 關(guān)鍵字:
    • extends:
      • 繼承父類的行為,再擴(kuò)充父類原本沒(méi)有的行為
      • 繼承時(shí)使用extends關(guān)鍵字,private成員也會(huì)被繼承,但子類無(wú)法直接存取,必須通過(guò)父類提供的方法來(lái)存取(父類愿意提供訪問(wèn)方法的話)
    • 權(quán)限關(guān)鍵字:
      • public:權(quán)限最大
      • protected:被聲明為protected的成員,相同包中的類可以直接存取,不同包中的類可以在繼承后的子類直接存取
      • private:權(quán)限最小

        但實(shí)際上有四個(gè)權(quán)限范圍(未定義權(quán)限關(guān)鍵字時(shí)默認(rèn)為包范圍):

        關(guān)鍵字類內(nèi)部相同包類不同包類
        public可存取可存取可存取
        protected可存取可存取子類可存取
        無(wú)可存取可存取不可存取
        private可存取不可存取不可存取

        設(shè)計(jì)時(shí)使用權(quán)限需根據(jù)經(jīng)驗(yàn)或團(tuán)隊(duì)討論而定,通常先使用private,以后視需求再放開(kāi)權(quán)限。

    • super:
      • 取得父類中的方法定義
      • 執(zhí)行父類中某構(gòu)造函數(shù)
      • 與this只能擇一調(diào)用,而且一定要在構(gòu)造函數(shù)第一行執(zhí)行
    • final:
      • 定義類:表示這個(gè)類是最后一個(gè),不會(huì)再有子類,不能被繼承
      • 定義方法:表示最后一次定義方法,子類不可以重新定義final方法
    • abstract:如果某方法區(qū)塊中沒(méi)有任何程序代碼操作,可以用abstract標(biāo)示該方法為抽象方法,該方法不用寫(xiě){}區(qū)塊,直接;結(jié)束即可

教材學(xué)習(xí)中的問(wèn)題和解決過(guò)程

問(wèn)題一:關(guān)于println與printf函數(shù)參數(shù)問(wèn)題

問(wèn)題二:關(guān)于關(guān)鍵詞abstract的使用

課后習(xí)題

所謂“實(shí)踐是檢驗(yàn)認(rèn)識(shí)真理性的唯一標(biāo)準(zhǔn)”,我在IntelliJ IDEA上把教材第三章課后練習(xí)題又敲了一遍,給出了自己的答案,并加上了一些自己的分析,通過(guò)逐題進(jìn)行代碼調(diào)試實(shí)踐的方式來(lái)深入對(duì)java類與對(duì)象的理解。小白在此懇請(qǐng)大家積極指出錯(cuò)誤的地方(>_<)

6.4.1 選擇題

  • C 分析:

    class Some641 {void doService() {System.out.println("some service");}}class Other641 extends Some641 {@Overridevoid doService() {System.out.println("other service");}}public class Exercise641 {public static void main(String[] args) {Other641 other=new Other641();other.doService();}}
  • C 分析:

    class Some6412 {void doService() {System.out.println("some service");}}class Other6412 extends Some6412 {@Overridevoid doService() {System.out.println("other service");}}public class Exercise6412 {public static void main(String[] args) {Some6412 some6412=new Other6412();some6412.doService();}}
  • B 分析:

    class Some6413 {String ToString() {return "Some instance";}}public class Exercise6413 {public static void main(String[] args) {Some6413 some6413=new Some6413();System.out.println(some6413);}}
  • D 分析:

    class Some6414 {int hashCode() {return 99;}}public class Exercise6414 {public static void main(String[] args) {Some6414 some6414=new Some6414();System.out.println(some6414.hashCode());}}
  • D 分析:

    class Some6415 {@OverrideString ToString() {return "Some instance";}}public class Exercise6415 {public static void main(String[] args) {Some6415 some6415=new Some6415();System.out.println(some6415);}}
  • A 分析:

    class Some6416 {abstract void doService();}class Other6416 extends Some6416 {@Overridevoid doService() {System.out.println("other service");}}public class Exercise6416 {public static void main(String[] args) {Some6416 some6416=new Other6416();some6416.doService();}}
  • D

    class Some6417 {protected int x;Some6417(int x) {this.x=x;}}class Other6417 extends Some6417 {Other6417(int x) {this.x=x;}}
  • D

    public class IterableString extends String {public IterableString(String original) {super(original);}public void iterate() {//...}}
  • AC 分析:

    class Some6419 {Some6419() {this(10);System.out.println("Some()");}Some6419(int x) {System.out.println("Some(int x)");}}class Other6419 extends Some6419 {Other6419() {super(10);System.out.println("Other()");}Other6419(int y) {System.out.println("Other(int y)");}}public class Exercise6419 {public static void main(String[] args) {new Other6419();new Other6419(10);new Some6419();}}
  • D

    class Some64110 {Some64110() {System.out.println("Some()");this(10);}Some64110(int x) {System.out.println("Some(int x)");} } class Other64110 extends Some64110 {Other64110() {super(10);System.out.println("Other()");}Other64110(int y) {System.out.println("Other(int y)");} } public class Exercise64110 {public static void main(String[] args) {new Other64110();} }

  • 代碼調(diào)試中的問(wèn)題和解決過(guò)程

    關(guān)于課本P86和P185偽隨機(jī)數(shù)(根本不隨機(jī))的問(wèn)題


    哼只需要改一個(gè)小小的地方就行啦(>_<)

    代碼托管

    • 運(yùn)行statistics:

    上周考試錯(cuò)題總結(jié)

    • Java中,=與==并沒(méi)有在基本類型和類類型的不同。(OK)
    • 兩個(gè)Integer對(duì)象比較大小,可以使用(comareTo())方法。
    • “30”轉(zhuǎn)化為byte類型的30的語(yǔ)句是(Byte.parseByte(“30”);)。
    • public void someMethod(int i)和public int someMethod()是方法重載。(OK)
    • Java中方法內(nèi)可以定義類。(OK)

    學(xué)習(xí)心得

    別睡懶覺(jué)啦,快去蹭Java課啦

    偶然聽(tīng)43班一哥們說(shuō)我們系江智宇學(xué)霸經(jīng)常來(lái)他們班蹭Java課(震驚!!這么好的利用教學(xué)資源的機(jī)會(huì)我怎么沒(méi)想到!),自學(xué)有困難的我也立刻萌生了前去蹭課的想法,順便感受一下43班的小班教學(xué)嘿嘿~于是適逢雙周一天沒(méi)課的這周四下午,為了蹭課干脆不睡午覺(jué)的我早早地潛伏在617教室后排,終于順利地蹭了人生第一節(jié)課(還是Java課(>_<))


    由于43班用的教材跟我們不一樣,關(guān)于Java知識(shí)體系的敘述順序不同,我也事先沒(méi)有弄清他們班的教學(xué)進(jìn)度,可以說(shuō)真的是毫無(wú)準(zhǔn)備地蹭課:(好在老師這節(jié)課重點(diǎn)講解類和對(duì)象的使用、方法重載,恰好是我看教材五六兩章最搞不懂犯迷糊的地方,帶著問(wèn)題去聽(tīng),認(rèn)真做好筆記,因此一節(jié)課聽(tīng)下來(lái)還是有不少收獲的( ?? ?)

    關(guān)于對(duì)象的清除

    由于周四那會(huì)兒還沒(méi)看到教材第六章垃圾收集機(jī)制呢,這段內(nèi)容當(dāng)時(shí)其實(shí)聽(tīng)得一知半解,但在周六看完書(shū)之后,特別是將課上做的筆記與書(shū)上的圖結(jié)合起來(lái)看一對(duì)照就恍然大悟啦~

    • 蹭課所得:

    ??Java運(yùn)行時(shí)系統(tǒng)通過(guò)垃圾收集器周期性地釋放無(wú)用對(duì)象所使用的內(nèi)存,完成對(duì)象的清除。當(dāng)不存在對(duì)一個(gè)對(duì)象的引用時(shí),該對(duì)象成為一個(gè)無(wú)用對(duì)象。Java的垃圾收集器自動(dòng)掃描對(duì)象的動(dòng)態(tài)內(nèi)存區(qū),對(duì)被引用的對(duì)象加標(biāo)記,然后把沒(méi)有引用的對(duì)象作為垃圾收集起來(lái)并釋放。垃圾收集器作為一個(gè)線程運(yùn)行,當(dāng)系統(tǒng)的內(nèi)存用盡或程序中調(diào)用System.gc()要求進(jìn)行垃圾收集時(shí),垃圾收集線程與系統(tǒng)同步運(yùn)行,否則垃圾收集器在系統(tǒng)空閑是異步地執(zhí)行。在對(duì)象作為垃圾被收集器釋放前,Java運(yùn)行時(shí)系統(tǒng)會(huì)自動(dòng)調(diào)用對(duì)象的方法finalize()(老師PPT上竟打錯(cuò)成finialize,噗),使它清除自己所使用的資源。

    ??在類的定義中,除了必須定義創(chuàng)建類實(shí)例等方法外,還可以在定義中提供用于對(duì)象清除的方法finalize(),它的格式如下:

    ??protected void finalize() throws Throwable { //撤銷對(duì)象 }

    ??finalize()方法是類java.long.Object中最基本的方法。

    ??前面已經(jīng)講過(guò),Java提供自動(dòng)內(nèi)存垃圾收集和處理程序,然而,在某些情況下,當(dāng)一個(gè)類被破壞后,需要親自執(zhí)行一些垃圾收集器不能處理的特殊清理工作。

    • 結(jié)合教材:






    說(shuō)到Java的垃圾回收機(jī)制,就不得不說(shuō)到讓很多人頭疼的Android手機(jī)越用越卡的問(wèn)題。眾所周知,Android手機(jī)上的程序都是在JVM上跑的,而JVM即使具有垃圾回收機(jī)制也無(wú)法避免內(nèi)存泄露的問(wèn)題,就會(huì)不斷產(chǎn)生垃圾、消耗內(nèi)存,Android手機(jī)會(huì)隨著安裝的APP越多,cpu能耗越大,從而越來(lái)越卡,且時(shí)間一長(zhǎng),這種卡頓體驗(yàn)會(huì)越來(lái)越明顯(>_<)TOO BAD:(而最新推出的Android7.0據(jù)說(shuō)通過(guò)優(yōu)化精簡(jiǎn)代碼來(lái)改進(jìn)運(yùn)行效率,極大提升了軟件運(yùn)行速度和應(yīng)用安裝速度,可謂是Android陣營(yíng)的福音~據(jù)說(shuō)基于Android7.0的華為P10快要發(fā)售了喲嘻嘻~

    關(guān)于方法重載

    老師舉的幾個(gè)例子非常恰當(dāng),看完代碼就差不多就明白怎么回事了~

    • 蹭課所得:

      重載:一個(gè)方法的不同版本

      • 關(guān)于成員方法重載的例子:

        //DemoOverload.javaclass Demo2 {int a,b;int method(){ //成員方法一return a+b;}int method(int c){ //成員方法二return a+b+c;}int method(int c,int d){ //成員方法三return a+b+c+d;}Demo2(int a,int b){ //構(gòu)造方法this.a=a;this.b=b;}}public class DemoOverload {public static void main(String args[]) {Demo2 aDemo2=new Demo2(1,2); //實(shí)例化int a=aDemo2.method(); //調(diào)用成員方法一System.out.println(a);int b=aDemo2.method(3); //調(diào)用成員方法二System.out.println(b);int c=aDemo2.method(3,4); //調(diào)用成員方法三System.out.println(c);}}

        上面程序的運(yùn)行結(jié)果為:

        其實(shí)在敲老師給的代碼的過(guò)程中,我發(fā)現(xiàn)了這樣一個(gè)問(wèn)題:

    關(guān)于實(shí)例方法和類方法

    • 蹭課所得:

      實(shí)例方法可以對(duì)當(dāng)前對(duì)象的實(shí)例變量進(jìn)行操作,也可以對(duì)類變量進(jìn)行操作,但類方法不能訪問(wèn)實(shí)例變量。實(shí)例方法必須由實(shí)例對(duì)象來(lái)調(diào)用,而類方法除了可由實(shí)例對(duì)象調(diào)用外,還可以由類名直接調(diào)用。

      關(guān)于類方法對(duì)使用,有如下一些限制:

      (1)在類方法中不能引用對(duì)象變量;

      (2)在類方法中不能使用super、this關(guān)鍵字;

      (3)類方法不能調(diào)用類中的對(duì)象方法。

      如果違反這些限制,程序就會(huì)導(dǎo)致編譯錯(cuò)誤。

      與類方法相比,實(shí)例方法幾乎沒(méi)有什么限制:

      (1)實(shí)例方法可以引用對(duì)象變量(這是顯然的),也可以引用類變量;

      (2)實(shí)例方法中可以使用super、this關(guān)鍵字;

      (3)實(shí)例方法中可以調(diào)用類方法。

    翻出塵封已久的C語(yǔ)言書(shū),現(xiàn)在...封印解除~!

    上了幾周的數(shù)據(jù)結(jié)構(gòu)課,張巖老師已經(jīng)將六大排序算法用C語(yǔ)言定義順序表的實(shí)現(xiàn)方式全部講完了,老實(shí)說(shuō)光聽(tīng)下來(lái)自己不動(dòng)手實(shí)踐對(duì)這門(mén)課十分無(wú)感,對(duì)排序算法更是吃不消?;貙嬍?#xff0c;從破舊的書(shū)柜中扒出了塵封已久的C語(yǔ)言書(shū),望著滿是塵埃早已泛黃的讓人失望的記憶,感慨萬(wàn)千,無(wú)限傷感……

    不過(guò)一翻開(kāi)這本再熟悉不過(guò)的C語(yǔ)言書(shū)時(shí)我的腦海中突然閃過(guò)“敲代碼”這個(gè)沖動(dòng),便立即聯(lián)系起java課上婁老師傳授給我們的“做中學(xué)”理論,有了繼續(xù)接觸C的動(dòng)力。

    于是這周上完數(shù)據(jù)結(jié)構(gòu)課后我馬上跑去圖書(shū)館,帶著C語(yǔ)言教材,慢慢地想、慢慢地寫(xiě),不斷地調(diào)試,花了一個(gè)下午加一個(gè)晚上的時(shí)間終于將除了基數(shù)排序之外的排序算法(冒泡、選擇、插入、快速、堆、歸并、計(jì)數(shù))全部用C語(yǔ)言數(shù)組(鏈表實(shí)在是太難了:(還沒(méi)搞懂)分別寫(xiě)進(jìn)多個(gè)函數(shù)的形式實(shí)現(xiàn)了一遍(數(shù)組下標(biāo)什么的最討厭了)~在沒(méi)有考慮優(yōu)化和防止非法輸入的情況下不知不覺(jué)又寫(xiě)了近300行(>_<):

    #include <stdio.h> #include <stdlib.h> #define N 5 void BubbleSort(int a[]); void SelectionSort(int a[]); void InsertionSort(int a[]); void QSort(int a[],int s,int t); int Partition(int R[],int low,int high); void CountingSort(int a[],int k); int max(int a[]); void HeapSort(int a[]); void MaxHeapify(int a[],int s,int m); void BuildMaxHeap(int a[]); void MergeSort(int a[],int s,int t); void Merge(int a[],int i,int m,int n); void main() {int i,j,temp;int a[N],b[N];printf("請(qǐng)輸入%d個(gè)整數(shù):",N);for(i=0;i<N;i++){scanf("%d",&a[i]);}BubbleSort(a); //冒泡排序/*for(i=0;i<N;i++) //冒泡排序{for(j=0;j<N;j++){if(a[j]>a[j+1]){temp=a[j];a[j]=a[j+1];a[j+1]=temp;}}}*///冒泡排序SelectionSort(a);//InsertionSort(a); //插入排序/*for(i=0,j=1;i<N,j<N+1;i++,j++) //將下標(biāo)改為從1開(kāi)始{b[j]=a[i];}QSort(b,1,N);for(i=1;i<N+1;i++){printf("%d ",b[i]);}*/ //快速排序//CountingSort(a,max(a)); //計(jì)數(shù)排序//HeapSort(a); //堆排序/*for(i=0,j=1;i<N,j<N+1;i++,j++) //將下標(biāo)改為從1開(kāi)始{b[j]=a[i];}MergeSort(b,1,N);for(i=1,j=0;i<N+1,j<N;i++,j++) //將數(shù)組下標(biāo)還原為從0開(kāi)始{a[j]=b[i];}*/ //歸并排序for(i=0;i<N;i++){printf("%d ",a[i]);} }void BubbleSort(int a[]) //冒泡排序 {int i,j,temp;for(i=0;i<N-1;i++){for(j=i+1;j<N;j++){if(a[i]>a[j]){temp=a[i];a[i]=a[j];a[j]=temp;}}} }void SelectionSort(int a[]) //選擇排序 {int i,j,k,temp;for(i=0;i<N-1;i++){k=i; //從下標(biāo)為0處開(kāi)始記錄for(j=i+1;j<N;j++){if(a[j]<a[k]){k=j; //記錄最小數(shù)下標(biāo)位置}}if(k!=i) //優(yōu)化處理:若最小數(shù)所在的下標(biāo)位置不在下標(biāo)位置i,則交換{temp=a[k];a[k]=a[i];a[i]=temp;}} }void InsertionSort(int a[]) //插入排序 {int i,j,b[N];for(i=0,j=1;i<N,j<N+1;i++,j++) //將下標(biāo)改為從1開(kāi)始,便于設(shè)置監(jiān)視哨a[0]{b[j]=a[i];}for(i=2;i<=N;i++){if(b[i]<b[i-1]){b[0]=b[i]; //復(fù)制為監(jiān)視哨for(j=i-1;b[0]<b[j];j--){b[j+1]=b[j];}b[j+1]=b[0];}}for(i=1,j=0;i<N+1,j<N;i++,j++) //將數(shù)組下標(biāo)還原為從0開(kāi)始{a[j]=b[i];} }void QSort(int a[],int s,int t) //快速排序 {int pivotloc;if(s<t-1) //長(zhǎng)度大于1{pivotloc=Partition(a,s,t); //對(duì)a[]進(jìn)行一次劃分QSort(a,s,pivotloc-1); //對(duì)左子序列遞歸排序,pivotloc是軸位置QSort(a,pivotloc+1,t); //對(duì)右子序列遞歸排序}} int Partition(int R[],int low,int high) {int pivotkey;R[0]=R[low];pivotkey=R[low]; //"軸"while (low<high){while (low<high&&R[high]>=pivotkey)high--;R[low]=R[high];while (low<high&&R[low]<=pivotkey)++low;R[high]=R[low];}R[low]=R[0];return low; }void CountingSort(int a[],int k) //計(jì)數(shù)排序 {int i,j;int C[N]; //引入索引數(shù)組Cint R[N]; //新建存儲(chǔ)數(shù)組Rfor(i=0;i<=k;i++){C[i]=0; //初始化數(shù)組c}for(i=0;i<N;i++){C[a[i]]++; //c[i]中存值等于i的元素個(gè)數(shù)}for(i=1;i<=k;i++){C[i]=C[i]+C[i-1]; //c[i]中存值小于等于i的元素個(gè)數(shù)}for(j=N-1;j>=0;j--){R[C[a[j]]]=a[j];C[a[j]]--; //下一個(gè)值為a[j]的元素被放到a[j]的前一個(gè)位置}for(i=0;i<N;i++){a[i]=R[i+1];} } int max(int a[]) {int i;int max;max = a[0];for(i=1;i<N;i++){if (max<a[i])max=a[i];}return max; }void HeapSort(int a[]) //堆排序 {int temp,i;BuildMaxHeap(a); //建大頂堆for(i=N;i>1;i--){temp=a[0]; //將堆頂元素和當(dāng)前未經(jīng)排序子序列a[0...i-1]中最后一個(gè)元素交換a[0]=a[i-1];a[i-1]=temp;MaxHeapify(a,0,i-2); //調(diào)整a[0...i-2]使其成為大頂堆} } void MaxHeapify(int a[],int s,int m) //維護(hù)堆的性質(zhì) {int rc,j;rc=a[s]; //暫存a[s]for(j=2*s;j<=m;j*=2){if(j<m&&a[j]<a[j+1]) j++; //左右"孩子"之間先進(jìn)行相互比較,令j指示較大的關(guān)鍵字所在位置if(rc>=a[j]) break; //再作"根"和"孩子"之間比較,若">="成立,則說(shuō)明已找到rc的插入位置s,不需繼續(xù)向下調(diào)整a[s]=a[j];s=j; //否則關(guān)鍵字上移,仍需繼續(xù)向下調(diào)整}a[s]=rc; //將調(diào)整前的堆頂插入到s位置 } void BuildMaxHeap(int a[]) //建堆 {int i;for(i=N/2-1;i>=0;i--){MaxHeapify(a,i,N); //建大頂堆} }void MergeSort(int a[],int s,int t) //歸并排序 {int m;if(s<t){m=(s+t)/2; //分解MergeSort(a,s,m); //解決MergeSort(a,m+1,t);Merge(a,s,m,t); //合并} } void Merge(int a[],int i,int m,int n) //歸并有序序列a[i...m]和a[m+1...n] {int j,k,p,q;int R[N];for(j=i;j<=n;j++){R[j]=a[j]; //復(fù)制}for(j=m+1,k=i;i<=m&&j<=n;k++){if(R[i]<=R[j]) a[k]=R[i++];else a[k]=R[j++];}if(i<=m){for(p=i,q=k;p<=m,q<=n;p++,q++){a[q]=R[p];}}if(j<=n){for(p=j,q=k;p<=n,q<=n;p++,q++){a[q]=R[p];}} }

    一提到防止非法輸入,就不得不提到我比較熟練運(yùn)用的C語(yǔ)言實(shí)現(xiàn),說(shuō)到C語(yǔ)言實(shí)現(xiàn),那就一定要安(xuan)利(yao)一下加入了防止非法輸入功能的比較完備的具有獨(dú)立知識(shí)產(chǎn)權(quán)的中國(guó)剩余定理的C語(yǔ)言實(shí)現(xiàn)~不說(shuō)廢話直接上圖~哼誰(shuí)敢欺負(fù)我我就拿代碼砸死你(。・ω・。)

    (下周更)

    學(xué)習(xí)進(jìn)度條

    代碼行數(shù)(新增/累積)博客量(新增/累積)學(xué)習(xí)時(shí)間(新增/累積)重要成長(zhǎng)
    目標(biāo)5000行20篇300小時(shí)
    第一周34/341/412/12
    第二周360/3941/516/28
    第三周701/10181/619/ 47代碼量激增( ?? ?)
    第四周608/13751/718/55①蹭了一節(jié)張健毅老師的Java課;②自己將數(shù)據(jù)結(jié)構(gòu)課上所學(xué)的排序算法除了基數(shù)排序之外全部用C語(yǔ)言實(shí)現(xiàn)了一遍(`_′)ゞ;③本次博客史無(wú)前例的長(zhǎng):)

    感想具體見(jiàn)上一條「學(xué)習(xí)心得」

    任何學(xué)習(xí)都是沒(méi)有捷徑的。

    這周高估了自己的理解能力,不說(shuō)回看第五章理解得如何,沒(méi)想到光看第六章就耗費(fèi)了我大量的時(shí)間和精力,只得馬馬虎虎地把第七章簡(jiǎn)單翻了一遍,合上書(shū)就啥也不知道了:(導(dǎo)致這周考試沒(méi)考好還是有些遺憾的:(不過(guò)自己通過(guò)動(dòng)手實(shí)踐加深了對(duì)數(shù)據(jù)結(jié)構(gòu)這門(mén)課的理解,也算是一大收獲吧嗯!

    有學(xué)霸學(xué)長(zhǎng)學(xué)姐建議我說(shuō)不要把過(guò)多時(shí)間浪費(fèi)在寫(xiě)博客上,我一想確實(shí)自己每周每天都要花很多時(shí)間來(lái)完善我的博客而不去真正搞懂Java中的有些問(wèn)題,的確有失偏頗,在這里感謝學(xué)長(zhǎng)學(xué)姐的批評(píng)指正!但其實(shí)我認(rèn)為,這幾周下來(lái),我已經(jīng)將寫(xiě)博客全然當(dāng)成了一種發(fā)朋友圈、發(fā)說(shuō)說(shuō)一類的日常習(xí)慣,隨時(shí)記錄自己的學(xué)習(xí)情況、隨時(shí)markdown自己的感想,我覺(jué)得自己將寫(xiě)博客從任務(wù)到習(xí)慣的蛻變,也可以算是一種進(jìn)步吧( ?? ?)

    這周老師開(kāi)創(chuàng)性地采用了「藍(lán)墨云班課」的教學(xué)方式,令人耳目一新。其中老師回復(fù)盛照宗同學(xué)說(shuō)我們Java課采用「翻轉(zhuǎn)課堂」的方式,可以根據(jù)自己的學(xué)習(xí)進(jìn)度來(lái)安排學(xué)習(xí)任務(wù),這也一定程度上啟發(fā)了我。實(shí)際上老師的教學(xué)方式確實(shí)是比較靈活的,提問(wèn)和答疑的方式也變得越來(lái)越便捷和高效,所以,每個(gè)人可以根據(jù)自己的程度完全量身定做自己的學(xué)習(xí)方式,哪里不懂就學(xué)哪里吧!

    • 計(jì)劃學(xué)習(xí)時(shí)間:20小時(shí)

    • 實(shí)際學(xué)習(xí)時(shí)間:18小時(shí)

    參考資料

    • JavaScript備忘錄(1)——內(nèi)置類型
    • 父類、子類與接口
    • 深入理解子類和父類之間關(guān)系
    • Java垃圾回收機(jī)制
    • Java內(nèi)存泄露原因詳解
    • Android 7.0 效率史上最高:運(yùn)行速度飆升600%
    • 為什么軟件工程師應(yīng)該養(yǎng)成寫(xiě)作的習(xí)慣?
    • 鄒欣老師SoftwareTeacher的教學(xué)博客:現(xiàn)代軟件工程 第一章 【概論】練習(xí)與討論
    • 代碼作業(yè)1 - 2016024281李郭鵬 - 博客園
    • Java學(xué)習(xí)筆記(第8版)
    • 《Java學(xué)習(xí)筆記(第8版)》學(xué)習(xí)指導(dǎo)

    轉(zhuǎn)載于:https://www.cnblogs.com/crazymosquito/p/6580190.html

    總結(jié)

    以上是生活随笔為你收集整理的20155314 2016-2017-2 《Java程序设计》第4周学习总结的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。