У меня есть несколько классов.
class Money {
protected amount: number
public equals(object: Object): boolean {
const money: Money = object as Money;
return this.amount === **money.amount** //<- i wants write like this
}
}
class Dollar extends Money {
constructor(amount: number){
super();
this.amount = amount;
}
}
и использование
new Dollar(5).equals(new Dollars(5));
, но я не могу получить доступ к классу Money money.amount
, а затем попробовал как это
class Money {
protected amount: number;
getAmount(): number {
return this.amount;
}
public equals(object: Object): boolean {
const money: Money = object as Money;
return this.amount === money.getAmount(); // tried
}
}
Или в классе Money удалите защищенный суффикс.
Это работает, но я чувствую, что это не круто.
Как я могу решить эту проблему как java?