我想讓子類別的靜態方法也符合固定的規範,提供差異功能,父類別的靜態方法來提供相同功能。
為什麼 java 中不讓靜態方法擁有和普通方法的整合覆寫重寫行為呢?我覺得蠻好的啊?只是因為不符合某種邏輯?
你知道哪種程式語言有這種特性。
用單例代替靜態就好,事實上,面向對象並不需要靜態,kotlin之類的這個支援就很好,用伴生對像或者單例對象代替靜態,可以讓伴生對象實現那個接口,
https://kotlinlang.org/docs/r...
interface Factory<T> { fun create(): T } class MyClass { companion object : Factory<MyClass> { override fun create(): MyClass = MyClass() } }
首先。你要理解java中什麼是靜態方法。重寫在某種程度上來說就是多態的體現,而java中靜態方法是與類別綁定的。也就是說,當這個類別被載入的時候,類別中的靜態方法也隨之載入,你所說的繼承重寫又有什麼意義呢?
用單例代替靜態就好,
事實上,面向對象並不需要靜態,
kotlin之類的這個支援就很好,
用伴生對像或者單例對象代替靜態,
可以讓伴生對象實現那個接口,
https://kotlinlang.org/docs/r...
首先。你要理解java中什麼是靜態方法。重寫在某種程度上來說就是多態的體現,而java中靜態方法是與類別綁定的。也就是說,當這個類別被載入的時候,類別中的靜態方法也隨之載入,你所說的繼承重寫又有什麼意義呢?