Android開發知道的基本知識點總(一)

一:java基礎面試知識點
    1.java中==和equals和hashCode的區別
       1)“==”運算符用來比較兩個變量的值是否相等。也就是說,該運算符用於比較變量對應的內存中所存儲的數值是否相同,要比較兩個基本類型的數據或兩個引用變量是否相等,只能使用“==”運算符。
       2)equals是Object類提供的方法之一。每一個Java類都集成自Object類,所以每一個對象都具有equals這個方法。Object類中定義的equals(Object)方法的情況下,equals(Object)與“==”運算符一樣,比較的是引用。相比“==”運算符,equals(Object)方法的特殊之處就在於它可以被覆蓋,所以可以通過覆蓋的方法讓它不是比較引用而是比較數據內容,例如String類的equals方法是用於比較兩個獨立對象的內容是否相同,即堆中的內容是否相同(簡單概括:比較兩個對象引用的比較,意思就是指向同一內存,地址則相等,否則不相等
         3)hashCode()方法是從Object類中繼承過來的,它也用來鑑定兩個對象是否相等。Object類中的hashCode()方法返回對象在內存中地址轉換成的一個int值,所以如果沒有重寫hashCode()方法,任何對象的hashCode()方法都是不相等的。

    2.char,byte,short,int,long,float,double各佔多少字節數
        char 16位 2個字節
 byte 8位 1個字節
short 16位 2個字節
int 32位 4個字節
long 64位 8個字節
float 32位 4個字節
double 64位 8個字節
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章