Java 异常处理——2

建立exception包,建立Bank类,类中有变量double balance表示存款,Bank类的构造方法能增加存款,Bank类中有取款的发方法withDrawal(double dAmount),

当取款的数额大于存款时,抛出InsufficientFundsException,取款数额为负数,抛出NagativeFundsException,如new Bank(100),表示存入银行100元,

当用方法withdrawal(150),withdrawal(-15)时会抛出自定义异常。

package exception;

public class Bank {
//	中有变量double balance表示存款,
//	Bank类的构造方法能增加存款,
//	Bank类中有取款的发方法withDrawal(double dAmount),
//	当取款的数额大于存款时,抛出InsufficientFundsException,
//	取款数额为负数,抛出NagativeFundsException,
	double balance;

	public double getBalance() {
		return balance;
	}

	public void setBalance(double balance) {
		this.balance = balance;
	}

	public Bank(double balance)
	{
		System.out.println("存款金额为:"+(balance)); 
	}
	public void withDrawal(double dAmount)
	{
		if(dAmount>balance)
		{
			try {
				throw new InsufficientFundsException();
			    }
			catch (InsufficientFundsException e) 
			{
				e.printStackTrace();
			}
			
		}
		if(dAmount<0)
		{
			try {
				throw new NagativeFundsException();
			} catch (NagativeFundsException e) {
				
				e.printStackTrace();
			}
			
		}
		
	}
}
package exception;

public class InsufficientFundsException extends Exception {

	@Override
	public String getMessage() {
		
		return "存款余额不足!";
	}
	
	
	

}
package exception;

public class NagativeFundsException extends Exception {

	@Override
	public String getMessage() {
		
		return "取款数额不能为负数!";
	}

}
package exception;

public class test {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
//		new Bank(100),表示存入银行100元,
//		当用方法withdrawal(150),
//		withdrawal(-15)时会抛出自定义异常
		Bank b=new Bank(100);
		
		b.withDrawal(150);
		b.withDrawal(-15);
		

	}

}

 

原文地址:https://www.cnblogs.com/jakeasd/p/5537853.html