Хм .. Вот инструкция, данная мне:
Поддерживает сложение и вычитание с другим объектом Money
Выдает исключение, если валюты несовместимы.
Хм .. У меня уже есть класс денег с add () в нем. Как именно я выбрасываю исключение в этом случае? Я имею в виду, я знаю, как сделать попытку {} поймать, но где я должен это сделать? Я делаю это в одном классе денег? или следует генерировать исключения где-нибудь, как в main (), где происходит все остальное?
public class Money {
Currency currency;
int dollar;
int cents;
//constructor
public Money(Currency currency, int dollar, int cents) {
super();
this.currency = currency;
this.dollar = dollar;
this.cents = cents;
}
.
.
.
.
public Money add(Money moneyToBeAdded){
Money result = new Money(moneyToBeAdded.getCurrency(),0,0);
Money totalInCents;
if(compareCurrency(moneyToBeAdded)){
totalInCents = new Money(moneyToBeAdded.getCurrency(),0,(moneyToBeAdded.toCents() + cents));
result = totalInCents.toDollars();
}//to do convert currency
return result;
}
public Money subtract()
public boolean compareCurrency(Money money){
return money.currency.equals(currency);
}
}