Java 异常处理——2

Posted jakermk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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);
		

	}

}

 

以上是关于Java 异常处理——2的主要内容,如果未能解决你的问题,请参考以下文章

使用片段中的处理程序时出现非法状态异常

异常和TCP通讯

java.util.MissingResourceException: Can't find bundle for base name init, locale zh_CN问题的处理(代码片段

java异常 throw和try-catch的关系

PCL异常处理:pcl 1.8.13rdpartyoostincludeoost-1_64oost ypeofmsvc ypeof_impl.hpp(125): error(代码片段

java.lang.NullPointerException: Attempt to invoke virtual method ‘int android.database.sqlite异常(代码片段