好程式員大資料教育訓練分享大資料面試寶典五:1、一個“.java”源檔案中是否可以包含多個類(不是内部類)?有什麼限制?【基礎】
答:可以;必須隻有一個類名與檔案名相同。
2、說出一些常用的類,包,接口,請各舉5 個。【基礎】
答:常用的類:BufferedReader BufferedWriter FileReader FileWirter String Integer;
常用的包:java.lang java.awt java.io java.util java.sql;
常用的接口:Remote List Map Document NodeList
3、Anonymous Inner Class (匿名内部類) 是否可以extends(繼承)其它類?是否可以implements(實作)interface(接口)? 【基礎】
答:可以繼承其他類或實作其他接口,在swing 程式設計中常用此方式。
4、内部類可以引用他包含類的成員嗎?有沒有什麼限制?【基礎】
答:一個内部類對象可以通路建立它的外部類對象的内容。
5、java 中實作多态的機制是什麼?【基礎】
答:方法的覆寫Overriding 和重載Overloading 是java 多态性的不同表現;
覆寫Overriding 是父類與子類之間多态性的一種表現,
重載Overloading 是一個類中多态性的一種表現。
6、在java 中一個類被聲明為final 類型,表示了什麼意思?【基礎】
答:表示該類不能被繼承,是頂級類。
7、下面哪些類可以被繼承? 【基礎】
1)java.lang.Thread (T)
2)java.lang.Number (T)
3)java.lang.Double (F)
4)java.lang.Math (F)
5)java.lang.Void (F)
6)java.lang.Class (F)
7)java.lang.ClassLoader (T)
答:1、2、7 可以被繼承。
8、指出下面程式的運作結果: 【基礎】
class A{
static{
System.out.print("1");
}
public A(){
System.out.print("2");
}
}
class B extends A{
static{
System.out.print("a");
}
public B(){
System.out.print("b");
public class Hello{
public static void main(String[] ars){
A ab = new B(); //執行到此處,結果: 1a2b
ab = new B(); //執行到此處,結果: 1a2b2b
}
答:輸出結果為1a2b2b;類的static 代碼段,可以看作是類首次加載(虛拟機加載)執行的代碼,而對于類加載,首先要執行其基類的構造,再執行其本身的構造。
9、繼承時候類的執行順序問題,一般都是選擇題,問你将會列印出什麼?【基礎】
父類:
package test;
public class FatherClass {
public FatherClass() {
System.out.println("FatherClass Create");
}
子類:
import test.FatherClass;
public class ChildClass extends FatherClass {
public ChildClass() {
System.out.println("ChildClass Create");
}
public static void main(String[] args) {
FatherClass fc = new FatherClass();
ChildClass cc = new ChildClass();
}
答:輸出結果為:
FatherClass Create
ChildClass Create
10、内部類的實作方式? 【基礎】
答:示例代碼如下:
public class OuterClass {
private class InterClass {
public InterClass() {
System.out.println("InterClass Create");
}
}
public OuterClass() {
InterClass ic = new InterClass();
System.out.println("OuterClass Create");
public static void main(String[] args) {
OuterClass oc = new OuterClass();
}
輸出結果為:
InterClass Create
OuterClass Create