2012-03-23 79 views
1

我有對象的層次結構定義如下:重寫在域類繼承的字段

class Request { 

    RequestType type 
} 

class CableRequest extends Request { 

    RequestType type = RequestType.Cable 
} 

休眠抱怨有:

了java.lang.RuntimeException:重複的方法:的getType

在繼承的類中預設默認值(或覆蓋字段)的正確方法是什麼?

更新: 因此很明顯,如果屬性標記爲瞬態這工作得很好...有另一種方式來設置這些沒有覆蓋getter Groovy的方式嗎?

回答

0

試試這個:

class Request { 

    RequestType type 
} 

class CableRequest extends Request { 

    RequestType getType() { 
     RequestType.Cable 
    } 
} 
+0

感謝唐,是的,我開始去的是壓倒一切的制定者太狂勝 - 然後我想 - 以及什麼意義呢?對象層次結構在這裏購買了什麼?如果我只在父級上設置類型字段,並在創建新實例時將其設置在服務類中,那麼我不會得到相同的結果。如果您使用服務類來管理您的域類發生了什麼,那麼單表類層次結構的重點是什麼? – dbrin 2012-03-23 17:59:57