2011-09-11 8 views

答えて

13

私は彼らが、コンクリートにする方法がないため、これは想像:recordsTableにプライベートなので

class Foo extends Table { 
    override val records = 3 
} 

は、失敗するでしょう。

Tableは役に立ちません。私はそれが傷つくことを見ることができません何か、ちょうどそれはほとんど確実にプログラマーの間違いを示しています。

19

@ Owenの答えを少し拡張するには:プライベートメンバーを宣言してください。

abstract class Table { 
    private val records: Int = 0 
} 

ただし、抽象プライベートメンバーを宣言することはできません。どうして?抽象クラスを継承する具象クラスは抽象メンバをオーバーライドする必要があり、プライベートメンバをオーバーライドできないためです。だから、Tableを拡張する具体的なクラスは一切持てません。

関連する問題