java內部類面試題介面程式設計題

2021-07-10 03:28:07 字數 1574 閱讀 4199

1、內部類的形式是怎樣的?

⒈靜態內部類

⒉成員內部類

⒊區域性內部類

⒋匿名內部類

2、為什麼要有「內部類」?

1、內部類提供了更好的封裝。只能讓外部類直接訪問,不允許同乙個包中的其他類直接訪問。

2、內部類可以直接訪問外部類的私有屬性,內部類被當成其外部類成員。但外部類不能訪問內部類的內部屬性。

3、利用內部類可以方便實現哪些功能?

可以不受限制的訪問外部類的域和方法。

4、內部類的實現機制?

5、內部類可以引用它的包含類(外部類)的成員嗎?有沒有什麼限制?

可以,限制,如果是靜態內部類,不能訪問外部類的非靜態成員。

程式設計題:

1.定義乙個樂器(instrument)介面,其中有抽象方法

void play();

在instrumenttest類中,定義乙個方法

void playinstrument(instrument ins);

並在該類的main方法中呼叫該方法。

要求:分別使用下列內部類完成此題。

成員內部類

區域性內部類

匿名類

//使用成員內部類實現

package xianweifu;

inte***ce instrument

class instrumenttest

}public void playinstrument(instrument ins)

}public class demo8

}

//使用區域性內部類實現

package xianweifu;

inte***ce instrument

class instrumenttest

}instrument piano = new piano();

piano.play();

} public void playinstrument(instrument ins)

}public class demo8

}

//使用匿名內部類實現

package xianweifu;

inte***ce instrument

class instrumenttest

}public class demo8

});}}

2、定義乙個father和child類,並進行測試。 

要求如下: 

1)father類為外部類,類中定義乙個私有的string型別的屬性name,name的值為「zhangjun」。 2)child類為father類的內部類,其中定義乙個introfather()方法,方法中呼叫father類的name屬性。 

3)定義乙個測試類test,在test類的main()方法中,建立child物件,並呼叫introfather ()方法。 

package xianweifu;

class father

}}public class demo8

}

JAVA匿名內部類以及面試題

匿名內部類,相當於簡化的內部類 前提條件 有乙個類 具體類或者抽象類 或者介面。格式 new 類名或者介面名 這裡new出來的物件相當於類的子類物件或者介面的實現類物件。實質 建立的是繼承了類或實現了介面的子類匿名物件。匿名內部類面試題 按照要求,補齊 inte ce inter class out...

匿名內部類面試題

inte ce inter class outer public class outerdemo public inte ce inter public class outher public class outherdemo 1 outer.method 可以看出method 應該是outer中的...

區域性內部類 匿名內部 匿名內部類的面試題

1 如何宣告?修飾符 class 外部類 extends 父類 implements 父介面們 說明 區域性內部類的修飾符 1 許可權修飾符 沒有 2 static沒有 3 abstract可以有 4 final可以有 2 使用 1 區域性內部類有作用域 2 區域性內部類中是否能使用外部類的非靜態成...