2012-06-17 45 views
0

我有一個叫Flamethrower的類,它自然有自己的彈藥,與其他武器不同。這個彈藥是否應該是火焰噴射器中的嵌套類,因爲只有噴火器纔會使用這個類?Java正確使用嵌套類?

+4

就個人而言,我不確定嵌套類是否永遠是個好主意。事件處理程序的匿名類 - 當然。同一模塊中有多個類:是的。嵌套類:在使用嵌套之前,我會使用繼承或組合。恕我直言... – paulsm4

+1

@ paulsm4 - 實際上使用嵌套類的決定與是否使用繼承或組合等無關 –

回答

3

我要刪除我的意見,使這個答案:

如果這種彈藥是噴火器內嵌套類

我不這麼認爲,其原因在於彈藥也會與目標互動,所以它的效果超出了它的主機武器。我通常爲僅在外部類中使用的「助手」類保留內部類。

0

你可能應該沒有課。一般來說,你希望像這樣的東西可以編寫腳本,以方便開發和修改。你應該用一個通用的彈藥類來替代它,它從數據文件中讀取數值,以便自定義行爲,除非你有一個非常好的理由不去做。一般來說,Java初學者的一個常見錯誤是無論他們需要或不需要,都可以爲所有事物創建類。