20172306《Java程式設計與資料結構》第一周總結

來源:互聯網
上載者:User

標籤:class   onstop   活動   基礎   一周   檔案中   工具   ppt   jin   

20172306《Java程式設計》第一周學習總結教材學習內容總結

本周主要學習《Android和Java》書中的第二十三章和第二十六章。

  • 第二十三章:Android簡介
  • Android使用Java作為編輯語言。
  • Android是向後相容的,針對較早的版本編寫的應用程式,總是能夠在新的版本上運行。
  • 每個活動都必須有一個清單,描述該應用程式。

  • 第二十四章:初識Android
  • studio的應用程式的結構:project有兩個節點:app和Gradle Scripts;app包含應用程式的所有組件,其中包含:manifests:是xml的檔案,就相當於之前講到的清單,它描述了應用程式。java:包含所有的Java應用程式和測試類別;res:這個包含了資源檔,這些資源是系統帶來的,我們也可以自己加一些。其中drawable包含用於各種螢幕解析度的映像;layout包含布局檔案;menu包含菜單檔案;mipmap包含用於各種螢幕解析度的app表徵圖;values包含了字串和其他值。
  • 其中需要注意的是R。每次你添加、修改或刪除資源的時候,都會重建R;R的作用是讓你能夠引用代碼中的一個資源。
  • AndroidManifest.xml是一個清單,用來描述應用程式

<application      android:allowBackup="true"    android:icon="@mipmap/ic_launcher"    android:label="@string/app_name"    android:roundIcon="@mipmap/ic_launcher_round"    android:supportsRtl="true"    android:theme="@style/AppTheme">    <activity android:name=".MainActivity">        <intent-filter>            <action android:name="android.intent.action.MAIN" />            <category android:name="android.intent.category.LAUNCHER" />        </intent-filter>    </activity></application>

  • 調試應用程式:對於調試來測試哪句出問題的方式是和在IDEA中是一樣的。不同的一點是,Android中提供了Android.util.log類用於記錄日誌訊息,其中會有一些縮寫,方便我們進行尋找錯誤。

  • 第二十五章活動
  • 活動有很多種方法:onCreate:在聲明周期中只調用一次;onStrat:在聲明中可以調用多次;onResume:可以調用多次;onPause:可以調用多次,在這之後會發生什麼取決於活動是否變得完全不可見,如果是的,就調用onStop,否則會調用onResume方法;當活動停止的時候,將調用onDestroy方法,在活動周期中只能調用一次。我在網上看的時候,找到了這張圖,我看的王文彬也同樣找到了這張圖

  • 我們在啟動一個新的活動的時候,可以利用Intent方法。如果像得到調用活動的一個結果,可以調用startActivityForResult方法。

  • 第二十六章 UI組件
  • 使用UI工具所做的事情都會反映到布局檔案中,以XML元素的形式體現出來,要查看你產生了什麼,單擊UI工具底部的XML視圖即可。
  • Toast
  • 它是一個小的彈出對話方塊,用於顯示一條訊息作為給使用者的反饋,它不會替代當前的活動,並且只是佔據了一條訊息的空間
  • Toast toast = Toast .makeText(this ,"20172306", LENGTH_LONG );
    toast .show() ;
    就是一個很好的toast的例子。
  • 通知
  • 通知是出現在狀態列上的一條訊息,和Toast不同,通知是持久的,並且將保持顯示,直到關閉它或者裝置。
  • 通知是android.app.Notification的執行個體,建立一個通知最方便的方法,是使用一個叫做Builder的嵌套類,可以通過傳遞一個Context來執行個體化該類。
  • Notification n = new Notification.Builder(context).bulid();
  • 要發布一個通知,可以使用NotificationManager
  • NotificationManager notificationmanager = (NotificationManager)
  • getSystemService (NOTIFICATION_SERVICE)

教材學習中的問題和解決過程
  • 問題1:首先在安裝Android Studio時,安裝上了,但是會顯示Sync failed 。然後它就會提示讓我下載一個gradle.zip,這個問題當時就記著解決,忘記了
  • 問題1解決方案:我就跟著下載,然後它就會說,try again。我就又下,結果大約下了十二遍以上,就放棄了,我覺得不是這樣的,然後我就上網找解決方案,他說讓我在官網上下載zip,但是沒什麼用,後來另一個同學和我遇到同樣的問題,也沒解決,後來就重建立了一個項目,就莫名其妙的好了!!!
  • 問題2:在看Toast的時候,記得老師說可以改變toast顯示的時間,但是我不知道怎麼弄?
  • 問題2解決方案:我就上網查了一下。發現我們可以自己設定一個方法,來設定改變toast的時間。

  • 問題3:學長說我們在做東西的時候,可以不設項目,而是在一個項目中建一個又一個的模組,但是我在建第二個的時候,我的Android Studio就突然gradle又出問題了。
  • 問題3的解決方案:我也不知道怎麼回事,就將Android重新啟動了一下,就好了,我也不知道為什麼,我猜可能是它的反應有點慢!

[代碼託管]

這周沒有代碼!!!!

上周考試錯題總結

  • 一個抽象的資料類型包含一個資料結構和操作和訪問資料結構的方法。在這些列表中,只有這個向量結合了這兩個向量。數組是一個資料結構,但是沒有方法(例如插入方法或搜尋方法)而引用變數和原始類型是資料,而不是資料結構。

  • 所有這些答案都是物件導向特性的類型。抽象資料類型封裝了資料結構和操作資料結構的方法,從而保留了資訊隱藏。因此,所有的ADTs都使用隱藏的資訊,這樣資料結構就不能直接從ADT外部操縱,但是其他物件導向的特性是不需要的。

  • 在鏈表中,連結是對下一個節點的引用。通過檢查參考資料的內容,通過“取值 (Dereference)”來跟蹤連結。節點對象。對象是類的執行個體。節點的資料部分很可能是int,以及其他類型的資料。

  • 一個簡單的線性列表被定向,從它的起始節點到它的結束節點。圖和圖都沒有起始節點,但是樹確實是樹的根。所以,一個簡單的線性列表就是一個退化樹的例子,它有一個分支因子,每個節點都有一個單獨的繼承者,從根開始,到單個葉子(結束節點)結束。

  • 雖然這兩個操作都是為各自的抽象資料類型“添加”或“插入”操作,但它們的不同之處在於,push在堆棧的頂部(或前端)添加,而enqueue總是在隊列的後面添加

  • 數組是一種資料結構,可以用來儲存一系列值,但是數組中沒有已經實現的操作來執行列表操作,比如添加到末尾,或者刪除給定的值。

  • 隊列和堆棧都是抽象的資料類型,它們的實現方法是無關緊要的,它是定義它們的操作(enqueue、dequeue、push、pop)。因此,兩個ADTs都可以使用數組或鏈表來實現。

  • 在Java中,所有的資料都是原語或類。ADT是一種資料結構,因此它不僅僅是一種原始類型,而是一種不同類型的結構。因此,ADT必須在類中定義。並不是所有的類都是ADTs,但是所有的ADTs都被定義為類。

  • 雖然雙向列表在每個節點中有多個連結,但是當您繪製一個雙向列表的圖片時,它仍然是線性。

  • apt-cache search tree

  • tar –cf dky.tar dky

  • grep –rn main /src

  • 上下左右順序依次是kjhl
結對及互評點評模板:
  • 部落格中值得學習的或問題:
    • xxx
    • xxx
    • ...
  • 基於評分標準,我給本部落格打分:8分。
點評過的同學部落格和代碼
  • 本周結對學習情況
    • 結對同學學號1
    • 結對學習內容
      • 一起學習了第二十三章到第二十六章
      • 一起做了老師在藍墨雲上的五個實驗
      • 一起在做實驗時學習了第二十七章和二十八章
其他(感悟、思考等,可選)
 這學期Java的學習很快就要結束了,這貌似也是這學期最後一次寫教學的部落格了。這一門課我學的不夠好,自己也知道原因,一是自己這學期放在Java的時間不夠多,很多練習自己都是一知半解的;一個是學習進程太快,自己理解的太慢了,很多時候自己剛學一半就又要進行下兩章的學習了。往往會讓自己對這門課失去一些興趣;一個是自己的部落格寫的吧,不夠好,不夠細緻吧,而且我問題比較少,其實也有,就是很多時候我都想著解決問題就不記得,等寫的時候,我就不記得都有什麼問題了。不過,自己還是沒能合理的安排好自己的時間。其實最開始自己還是立志一定要學好Java的,後來漸漸走歪了。我希望自己假期的時候吧,能把Java的一些基礎的東西再學習學習,我知道下學期還要繼續學習有關知識,我吸取這次的經驗,爭取在下學期學好這門課
學習進度條
程式碼數(新增/累積) 部落格量(新增/累積) 學習時間(新增/累積) 重要成長
目標 5000行 30篇 400小時
第一周 193/200 1/1 20/20
第二周 247/440 1/1 22/42
第三周 445/895 2/2 20/62
第四周 885/1780 1/1 43/105
第五周 775/2555 1/1 55 /160
第六周 1171/3726 1/1 38/198
第七周 596/4322 1/1 60/258
第八周 569/4891 2/2 55 /313
第九周 1890/ 6781 1/1 66/379
第十周 1021/7793 1/1 70/449
第十一周 0/ 7793 3/3 50/499
參考資料
  • Android的Toast

  • Android生命週期

20172306《Java程式設計與資料結構》第一周總結

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.