Как получить доступ к унаследованному полю Java с тем же именем, что и метод Scala?

У меня есть черта Scala A с абстрактным методом

trait A[T] {
  def self: T
}

Теперь мне случилось, что я хочу расширить класс Java, не находящийся под моим контролем, с помощью поля с тем же именем:

public class B<T> {
    protected T self;
}

Я бы хотел, чтобы класс C был определен как

class C[T] extends B[T] with A[T] {
    override def self: T = /* the field `self` of `B` ??? */
}

Можно ли как-то получить доступ к полю B.self, чтобы вместо этого оно не разрешалось в метод A.self? Возможен ли вообще такой сценарий?


person Petr    schedule 09.07.2013    source источник
comment
Дубликат, см. stackoverflow.com/a/16618569/1296806, который ссылается на его дубликат   -  person som-snytt    schedule 10.07.2013
comment