java軟體工程師面試題有哪些呢?今天小編為大家收集整理了以下的面試題,歡迎學習!
Java基礎方面:
1,作用域public,protected,private,以及不寫時的區別
答:區別如下:
作用域 當前類 同一package 子孫類 其他package
public √ √ √ √
protected √ √ √ ×
friendly √ √ × ×
private √ × × ×
不寫時預設為friendly
2,ArrayList和Vector的區別,HashMap和Hashtable的區別
答:就ArrayList與Vector主要從二方面來說.
一.同步性:Vector是執行緒安全的,也就是說是同步的,而ArrayList是執行緒序不安全的,不是同步的
二.資料增長:當需要增長時,Vector預設增長為原來一培,而ArrayList卻是原來的一半
就HashMap與HashTable主要從三方面來說。
一.歷史原因:Hashtable是基於陳舊的Dictionary類的,HashMap是Java 1.2引進的Map介面的一個實現
二.同步性:Hashtable是執行緒安全的,也就是說是同步的,而HashMap是執行緒序不安全的`,不是同步的
三.值:只有HashMap可以讓你將空值作為一個表的條目的key或value
3,char型變數能不能定義為一箇中文?為什麼?
答:是能夠定義成為一箇中文的,因為java中以unicode編碼,一個char佔16個位元組,所以放一箇中文是沒問題的
4,多執行緒有幾種表示方法,都是什麼?同步有幾種實現方法,都是什麼?
答:多執行緒有兩種實現方法,分別是繼承Thread類與實現Runnable介面
同步的實現方面有兩種,分別是synchronized,wait與notify
5,繼承時候類的執行順序問題,一般都是選擇題,問你將會打印出什麼?
答:父類:
package test;
public class FatherClass
{
public FatherClass()
{
tln("FatherClass Create");
}
}
子類:
package test;
import erClass;
public class ChildClass extends FatherClass
{
public ChildClass()
{
tln("ChildClass Create");
}
public static void main(String[] args)
{
FatherClass fc = new FatherClass();
ChildClass cc = new ChildClass();
}
}
輸出結果:
C:>java dClass
FatherClass Create
FatherClass Create
ChildClass Create
6,內部類的實現方式?
答:示例程式碼如下:
package test;
public class OuterClass
{
private class InterClass
{
public InterClass()