Java基礎知識常識總結

  Java基礎知識常識總結

1.面向對象的特徵以及對他的理解?

  封裝,繼承,多態,若是再增長一條就是抽象.spa

2.Object有幾種方法,分別是什麼?

  在JDK1.5中的11種方法,分別有:線程

  toString方法:  該方法用得比較多,通常子類都有覆蓋。

      getClass方法: final方法,得到運行時類型,使用反射的幾種方式之一.

   equals方法:   該方法是很是重要的一個方法。通常equals和==是不同的,可是在Object中二者是同樣的。子類通常都要重寫這個方法。

   hashCode方法:   該方法用於哈希查找,重寫了equals方法通常都要重寫hashCode方法。這個方法在一些具備哈希功能的Collection中用到。通常必須知足                                                                      obj1.equals(obj2)==true。能夠推出obj1.hash- Code()==obj2.hashCode(),可是hashCode相等不必定就知足equals。不過爲了提升效率,應該儘可能使上面兩個條件接近等價。

   clone方法 : 保護方法,實現對象的淺複製,只有實現了Cloneable接口才能夠調用該方法,不然拋出CloneNotSupportedException異常。

     finalize方法 : 該方法用於釋放資源。由於沒法肯定該方法何時被調用,不多使用。

  wait方法 : 

   wait方法就是使當前線程等待該對象的鎖,當前線程必須是該對象的擁有者,也就是具備該對象的鎖。wait()方法一直等待,直到得到鎖或者被中斷。wait(long timeout)設定一        個超時間隔,若是在規定時間內沒有得到鎖就返回。對象

    調用該方法後當前線程進入睡眠狀態,直到如下事件發生。繼承

       (1)其餘線程調用了該對象的notify方法。接口

  (2)其餘線程調用了該對象的notifyAll方法。事件

  (3)其餘線程調用了interrupt中斷該線程。資源

  (4)時間間隔到了。get

       此時該線程就能夠被調度了,若是是被中斷的話就拋出一個InterruptedException異常。hash

       notify方法 :  該方法喚醒在該對象上等待的某個線程。it

       notifyAll方法 : 該方法喚醒在該對象上等待的全部線程。

相關文章
相關標籤/搜索