Использование частного модификатора SCALA?

Что я могу использовать личный финал модификатор в Scala для?

Учитывая следующий код:

1| class A { def callFoo = foo; private final def foo = "bar of A" }
2| class B extends A { private final def foo = "bar of B"}
3| println((new A()).callFoo)
4| println((new B()).callFoo)

строка 3 и 4 Отпечатки:

1| bar of A
2| bar of A

Понятно, почему строка 2 не печатает бара B , потому что на самом деле есть два FOO определения, а последняя в B не переопределяют первое в A. В противном случае Scala потребует переопределения - вместо модификатора модификатора .

Так почему же Scala не просто запрещает комбинацию модификаторов частных ?

12
задан Tim Friske 6 September 2011 в 12:22
поделиться