📄 java06_07.htm
字号:
<html>
<head>
<meta http-equiv="Content-Language" content="zh-cn">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>Java程序设计</title>
</head>
<body background="Bg.gif">
<p align="center"><font size="5"><b>§6.7 用户自定义异常</b></font></p>
<p align="left">
如果系统预定义的类不能满足编程要求,程序员可以自己定义异常类。语言要求用户自己定义的异常类必须是Throwable的子类,不过一般情况下,都会由Exception类派生出来。</p>
<p align="left">
定义异常类和定义普通类并没有本质上的区别,它们也会自动继承父类中可以继承的方法和属性。一般情况下,它需要声明两个构造方法:一个是不带参数的方法;一个是以字符串为参数,作为本异常类的具体信息。下面看一个简单的例子:</p>
<p align="left">class MyException extends Exception{<br>
MyException(){ super();}<br>
MyException(String s) { super(s); }<br>
}<br>
<br>
class useMyException{<br>
public static void main(String argv[]){<br>
try{<br>
throw new MyException("这是我自己定义的异常类");<br>
}<br>
catch (MyException e) {<br>
System.out.println("异常信息是:"+e.toString());<br>
} <br>
}<br>
}</p>
<p align="left">最后我们来看一个从键盘输入整型数据的完整例子:</p>
<p align="left">import java.io.DataInputStream;<br>
import java.io.IOException;<br>
class Myinput{<br>
public static void main(String argv[]){<br>
int k;<br>
DataInputStream inbuf=new DataInputStream(System.in);<br>
String buf;<br>
try{<br>
System.out.print("请输入数据:");<br>
buf=inbuf.readLine();<br>
System.out.println("你输入的数据是:"+buf);<br>
k=Integer.parseInt(buf);<br>
System.out.println("转换成整型数是:"+k);<br>
}<br>
catch(IOException e){<br>
System.out.println("输入流有误!");<br>
}<br>
catch(NumberFormatException e){<br>
System.out.println("你输入的不是一个十进制数!");<br>
} <br>
}<br>
}</p>
<p align="left"><a href="index.htm">回目录</a> <a href="java06_06.htm">上一课</a>
<a href="java07_01.htm">下一课</a>
</p>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -