내 과거의 시험 용지 질문 중 하나는 IllegalArgumentException이 발생하는 방식으로 메서드를 수정해야합니다.강제 IllegalArgumentException
방법은 단순히 은행 계정 잔액 여기
에서 돈을 인출 포함이 작업을 수행하는 방법입니다.
public void withdraw(double ammount) { this.balance -= ammount; }
? 전에는이 예외를 본 적이 없습니다.
내 과거의 시험 용지 질문 중 하나는 IllegalArgumentException이 발생하는 방식으로 메서드를 수정해야합니다.강제 IllegalArgumentException
방법은 단순히 은행 계정 잔액 여기
에서 돈을 인출 포함이 작업을 수행하는 방법입니다.
public void withdraw(double ammount) { this.balance -= ammount; }
? 전에는이 예외를 본 적이 없습니다.
는 예외가 throw
으로 던져 질 수 있습니다
throw new IllegalArgumentException("Amount must be positive.");
당신은 방법을 자신의 나머지 부분을 작성해야합니다.
예외를 throw하려면 throw 명령을 사용하고 Exception 인스턴스 (예외도 클래스 임)를 전달합니다. 이처럼
: e
는 예외입니다
throw e;
. 이 구문은 Java 및 C#과 동일합니다.
그래서 IllegalArgumentException을 던지려면 먼저 인스턴스를 만든 다음 그 인스턴스를 던집니다.
public void withdraw(double amount)
{
if (this.balance < amount)
{
IllegalArgumentException iae =
new IllegalArgumentException("Invalid amount. You're broke.");
throw iae;
}
else this.balance -= amount;
}
다음 단계에서는 try-catch-finally 블록에 대해 읽으십시오.
나는 예외를 던지려고 아니야, 나는 IllegalArgumentException 오류가 발생하도록 노력하고있어. 에서와 마찬가지로 ArrayOutOfBoundsException이있는 경우 콘솔에는이 예외가있는 빨간색 텍스트가 표시됩니다. – Shaun
다음을 나타내는 질문을 편집하십시오. – Renan
죄송합니다. 나는 거기서 잘못된 상황에서 "던짐"을 사용했다. – Shaun