Próbując zdefiniować metody dostępowej dla domyślnej parametru konstruktora, a mianowicie:Jak zdefiniować metodę dostępową dla domyślnego parametru konstruktora?
class Person (age: Int) {
def age: Int = this.age
}
co oczywiście powoduje błąd kompilatora: niejednoznaczne odniesienie do przeciążonej definicji, zarówno wiek metody w klasie Person of type => int i wartości wiek w klasie Osoba typu Int dopasowany oczekiwany typ Int
Czy istnieje sposób na odróżnienie nazwy metody członkowskiej od automatycznie generowanej nazwy wartości elementu?
Oczywiście możliwa jest zmiana nazwy dowolnego identyfikatora, ale czy jest jakiś sposób w tym scenariuszu faktycznego określenia, który identyfikator jest określony?
Dzięki! Sam to wymyśliłem.:-) Ale co jeśli chciałbym zastąpić domyślny akcesor? Chyba nadal będę musiał zmienić nazwę parametru? –
Tak, musisz zmienić nazwę parametru (np. 'Age0'), a następnie zdefiniować accessor' def age = {Math.abs (age0) – retronym