我參加了這次面試,獲得了一個軟件開發人員的職位,他們給了我一些測試代碼,通常有4個選項可供選擇。
其中一個問題在類範圍外聲明瞭一個枚舉,我立即檢查了「不編譯」答案並繼續處理其他問題。 它是這樣的:在課堂範圍外聲明的Enum
enum Colors {BLUE,RED,GREEN}
class Test {
//other code, not really important with my question
}
此代碼實際上編譯。
除了像這樣的一個採訪(可能或者)可能沒有用來確定一個人是否是一個優秀的開發人員,我擔心的是:爲什麼我要聲明這樣的枚舉?爲什麼我只能使用枚舉來做到這一點? 我做了一些測試,發現它在課堂上是可見的,但不是其他課程。
旁註:我得分很差:P。我在理論上獲得了最大值,但在角落代碼情況下接近最低可能值。我不認爲我會得到這份工作。
它將在同一個命名空間中的其他類中顯示,而不僅僅在一個文件中。 BCL中的大多數枚舉都是在類之外聲明的,就像您提供的示例(除了它們是公共的)。 所以問題是爲什麼*不會*你宣佈這樣的枚舉? – Groo 2009-10-01 10:17:35
檢查是否有人使用java訪問控制並且類不是表單public class A {private String field;公共方法(){}}默認情況下。 – 2009-10-01 10:49:10
@格羅:是的,當然是編譯 – 2009-10-01 11:04:52