/*
try - catch语句的例子,模拟向货船上装载集装箱
,如果货船超重,那么货船认为这是一个异常,将拒绝装载集装箱,
但无论是否发生异常,货船都需要正点起航。
*/
package st;
class DangerException extends Exception
{
final String message ="超重";
public String warnMess(){
return message;
}
}
class CargoBoat
{
int realContent; //实际装载的重量
int maxContent; //最大装载量
public void setmaxContent(int c) {
maxContent=c;
}
public void judgeload(int load ) throws DangerException
{
if(realContent +load<maxContent)
realContent +=load;
else
throw new DangerException();
System.out.println("目前装载了"+realContent+"吨货物");
}
}
public class example_1
{
public static void main(String args[])
{
CargoBoat ship = new CargoBoat();
ship.setmaxContent(1000);
int [] m={600,400,367,555};
try
{
for(int i=0 ; i<4 ; i++)
ship.judgeload(m[i]);
}
catch(DangerException e)
{
System.out.println(e.warnMess());
System.out.println("无法再装载重量是"+m+"吨的集装箱");
}
finally
{
System.out.println("货船将正点起航");
} }
}
try-catch-finally
/*
目前装载了600吨货物
超重
无法再装载重量是[I@c9d92c吨的集装箱
货船将正点起航
*/