在方法中用了throws exception抛出异常,调用这个方法的时候就必须用try{}catch{}但是有些API中定义的方法用后面也抛出异常..但是可以不用try{}catch{}..也可以运行啊..
这是怎么回事呢??
这是怎么回事呢??
解决方案 »
- java中的继承
- java更新access数据库的问题
- 要知道 Java API是怎样设计的可看以下帖子内容
- double与float显示的问题
- 求一条MySql的语句????
- javamail发邮件在linux下无法发送附件的问题?
- B/S,当客户机器连接到应用服务器时如何修改客户机时间为服务器时间?
- 请教如何控制awt控件的大小,位置,控件之间的距离
- 网站的站内搜索是怎么实现的?怎么做?在网页的头元素中有一关键词元素,是不是就是给站内搜索用的?如果我在Sina中登记我的网站,那么是不是
- java.nio.channels.ClosedChannelException这样的问题如何解决?
- JAVA新手的两个问题(强制类型转换、接口/抽象类)
- 怎么在表格中添加复选框
运行时异常,我们可以不处理
checked 异常也就是我们经常遇到的IO异常,以及SQL异常等需要处理
public class stud
{
public static void main(String [] args)throws Exception
{
BufferedReader s=new BufferedReader(new InputStreamReader(System.in));
char t;
System.out.println("Enter a character :");
t=s.readLine();
if((t=='a')||(t=='e')||(t=='i')||(t=='o')||(t=='u'))
{
System.out.println("The entered character is nomal .");
}
else
{
System.out.println("The entered character is anament .");
}
}
}看下这个小程序。. 没有用 TRY CATCH
但是现在哪些属于cheked exception哪些发球runtimexception
}
可以当前用try catch 处理
也可以继续抛,throws Exception,由外层进行处理,如果外层还不处理,继续向外层抛。。
public class InAndOut {
public static void main(String[ ] args) throws IOException {
BufferedReader br = null;
char buf[ ] = new char[20];
int i;
int len = 0;
String str;
try {
br = new BufferedReader(new InputStreamReader(System.in));
System.out.print("请输入一行字符,以回车结束:");
len = br.read(buf, 0, buf.length); //读入到buf数组中
//注意输入字符不能超过数组容量,一个中文算一个字符
System.out.print("你输入的内容是:");
System.out.print(new String(buf, 0, len));
System.out.print("请输入一个整数,以回车结束:");
str = br.readLine(); //读入的是字符串
i = Integer.parseInt(str); //把字符串转化为整数
//此时可能抛出NumberFormatException
System.out.println("你输入的整数是:" + i);
} catch(IOException e) {
System.out.println("输入输出异常:" + e.toString());
} catch(NumberFormatException e) {
System.out.println("数据格式错误:" + e.toString());
} finally {
if (br != null) { br.close(); }
}
}
}
这句话里面为什么非要有throws IOException 呢如果是在main方法里写就没意义的,,不是吗???