HeadFirst 讀書筆記(二)

靜態static

  • 靜態的方法不能調用非靜態的變量java

  • 靜態的方法不能調用非靜態的方法多線程

  • 靜態的變量被同類的全部實例共享 spa

  • 靜態變量會在該類的任何對象建立以前完成初始化線程

  • 靜態變量會在該類的任何靜態方法執行以前完成初始化3d

  • 靜態的final變量是常量code

    public static final double PI = 3.1415926;
    複製代碼
    • public: 供各方讀取
    • static: 你不須要Math實例
    • final: 圓周率是不變的

autoboxing 自動裝箱

有時你會想要把primitive原始數據類型當作對象來處理,例如在5.0以前的java版本上,你沒法直接將primitive原始數據類型放入到ArrayList或hashMap中cdn

autoboxing:沒必要把primitive主數據類型與對象分的那麼清楚

處處都用獲得的autoboxing

java異常

異常體系

處理異常的兩種方法

  • 向上拋
  • 當前方法捕獲

受檢異常vs非受檢異常

try/catch/finally

處理多重異常

異常也是多態的

多個catch塊時要從小到大排

不要把大籃子放到小籃子上面對象

多線程

java有多個線程但只有一個Thread類

每一個線程有本身獨立的調用棧blog

有多個以上執行空間表明什麼?

多線程看起來像同時執行,實際上是cpu調度,並隨機給線程分配時間片斷(拿到時間片斷的才能執行), 線程之間快速切換交替執行繼承

線程看起來就像一個工人, 你須要指派給工人任務

建立線程的方法
  • 繼承Thread類, 重寫run方法
  • 實現Runnable接口, 實現run方法(推薦)

線程狀態

相關文章
相關標籤/搜索