Java基礎面試必問
阿新 • • 發佈:2019-01-01
1.&與&&區別?
&和&&都是邏輯運算子,都是判斷兩邊同時真則為真,否則為假;但是&&當第一個條件不成之後,後面的條件都不執行了,而&則還是繼續執行,直到整個條件語句執行完為止。
2."=="和 equals 方法有什麼區別?
“==”如果判斷值型別的話,判斷內容是否相同。如果判斷引用型別則是判斷記憶體地址是否相同;
equals判斷值內容是否相等。
3.介面與抽象類的區別?
區別:
定義介面的關鍵字是:interface 而定義抽象類的關鍵字是:abstract。
介面中成員不能有私有, 抽象類可以。
介面中定義的成員, 是final public static 型別, 抽象類沒有。
介面中的不能有普通方法, 抽象類中可以。
相同:
兩者都不能new。
4.String,StringBuffer和StringBuilder有什麼區別?
String 字串常量;
StringBuffer 字串變數(執行緒安全);
StringBuilder 字串變數(非執行緒安全)。
5.陣列有沒有length()這個方法? String有沒有length()這個方法?
陣列沒有length()這個方法,有length的屬性。String有有length()這個方法。
6.過載與重寫區別?
過載是同一個類中,方法名稱相同, 但是引數或個數不同。與返回值沒有關係。
重寫是在多個類中, 產生繼承關係。父類與子類的方法方法必須相同。