?? exceptionapplet.java
字號(hào):
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
public class ExceptionApplet extends Applet implements ActionListener
{ Label L1,L2;
TextField tf1,tf2;
String answerStr;
double d1,d2;
public void init( )
{ L1=new Label("請(qǐng)輸入0到100之間的整數(shù)");
add(L1);
tf1=new TextField(6);
add(tf1);
tf2=new TextField(6);
add(tf2);
L2=new Label("兩數(shù)相除的結(jié)果: ");
add(L2);
tf1.addActionListener(this);
tf2.addActionListener(this);
}
public void actionPerformed(ActionEvent evt)
{ try
{ d1=Double.valueOf(tf1.getText( )).doubleValue( );
d2=Double.valueOf(tf2.getText( )).doubleValue( );
// valueOf(String s) 可能拋出異常 NumberFormatException
L2.setText("兩數(shù)相除的結(jié)果: "+Result( ));
// 調(diào)用 Result( ) 方法可能拋出 NumberRangeException 異常
}
catch(NumberFormatException e)
{ answerStr="輸入的必須是數(shù)字";
L2.setText(answerStr);
}
catch(NumberRangeException ee)
{ answerStr=ee.getMessage( );
L2.setText(answerStr);
}
repaint( );
}
public double Result( ) throws NumberRangeException
{ double answer=0;
try
{ if((d1<0)||(d2<0)||(d1>100)||(d2>100))
{ NumberRangeException ee=new NumberRangeException("輸入的數(shù)字不在指定的范圍!請(qǐng)重新輸入。");
throw ee;
}
answer=d1/d2;
}
catch(ArithmeticException eee)
{ answerStr=eee.toString( );
}
return answer;
}
}
class NumberRangeException extends Exception
{ NumberRangeException(String msg)
{ super(msg); }
//子類調(diào)用父類的帶參數(shù)的構(gòu)造函數(shù)
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -