[編程工具]
妳常用的編程工具有哪些?這個問題主要是考察妳工作的專業性,妳是不是具有大型項目的工作經驗.
壹般好的,Java的編程工具,妳比如說,Eclipse, netbeans, Intelli J 等等。
[局部變量和類變量的區別]
這個問題主要是考察選手對於scope的概念。回答這個問題,
就是局部變量是在方法裏面定義的。這個變量只能在方法內部才可以被調用。
類變量呢,可以在類的內部,任何地方都可以被調用。類變量還可以添加壹些修飾符,限制或者允許外部類調用。
[什麽是繼承? ]
繼承就是說子類可以享有父類的壹些定義。
[什麽是封裝?]
封裝是通過類定義的方式,把壹些方法和數據包裹起來。
[什麽是多態?]
多態是指壹個對象可以通過具體的引用類型來調用父類和子類的壹些方法。
這三個問題主要是考察選手對於面向對象編程的概念。
[ Overriding 和 overloading的區別]
這兩種方法在編程中會經常用到。被問的可能性非常大。
Overriding主要用在子類要使用父類的壹些方法定義。方法名必須相同,方法參數必須相同, 返回值類型必須相同。使用這種方法, 子類既可以調用父類的方法也可以添加自己個性化的實現。
Overloading主要用在方法這壹層次上。具有同樣的方法名,不同的參數類型, 可能會返回不同的數據類型。
[接口和抽象的區別?]
這個問題在面向對象編程裏面也是經常被問到的壹個問題。
在Java中,無法實現多類繼承,所以就引入了接口的概念。接口中,主要是類的聲明,沒有實現內容。
抽象類中至少要含有壹個抽象方法。這個抽象方法只有聲明沒有實現。抽象類的非抽象方法,需要有實現內容。
[說壹下訪問修飾符]
這也是面向對象編程裏面非常重要的壹個概念。
private, protected, public。沒有修飾符,就是default。
private只能在本類內部訪問。
protected在本類和子類中訪問。
public在其他類中都可訪問。
default在包內可訪問。
[數組和數組列表的區別?]
[String, StringBuilder, StringBuffer的區別? ]
string不可修改。
string builder可修改,線程不安全的。
string buffer可修改,線程安全的。
[HashMap, HashTable 的區別? ]
都是字典類型。
hash map 是線程不安全的。
hash table 是線程安全的。
[Set 相關的問題]
Set裏面的數據是唯壹的。
sorted set是可排序的。
[Queue 相關的問題]
priority queue先進先出。
[Map相關的問題]
有hash map, linked hash map, tree map.