关于Java的一个自定义抛处异常问题

zxmmiao 2007-03-17 12:58:07
下面是一个温度检测的小程序,请问是怎么回事啊,。执行不了


import java.io.*;

//自定义异常类
class TmpException extends Exception
{
TmpException(String a)
{
super(a);
}
}

public class Test3
{


public static void main(String args[])
{
float tmp;
try {

tmp = Float.parseFloat(args[0]);

}
catch (ArrayIndexOutOfBoundsException e)
{
System.out.println("请输入一个参数");
}
catch (NumberFormatException e)
{
System.out.println("请输入一个数字");
}
catch (TmpException e)
{
System.out.println("输出温度"+tmp);
}
}

static void checktmp(float t) throws TmpException
{
if (t < -273.15)
{
throw new TmpException("温度不能低于绝对零度");
}
}

}
...全文
352 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wummks 2008-10-24
  • 打赏
  • 举报
回复
我正在做这个练习题!
谢了各位了!
weichenggao 2007-03-18
  • 打赏
  • 举报
回复
checktmp(tmp); //要调用这个方法才可能抛出自定义异常
楼上的星星已经写的很清楚了,要注意看呀,快给别人揭贴吧!
weichenggao 2007-03-18
  • 打赏
  • 举报
回复
static void checktmp(float t) throws TmpException
{
if (t < -273.15)
{
throw new TmpException("温度不能低于绝对零度");
}
}

你只是定义了一个静态的方法,没有调用呀!
zxmmiao 2007-03-17
  • 打赏
  • 举报
回复
为什么我从命令行输入-300,他怎么不输出"温度不能低于3绝对零度啊"

好象没有用到下面的判断的
interpb 2007-03-17
  • 打赏
  • 举报
回复

//自定义异常类
class TmpException extends Exception {
TmpException(String a) {
super(a);
}
}

public class Test3 {

public static void main(String args[]) {
float tmp = 0f; //初始化
try {

tmp = Float.parseFloat(args[0]);
checktmp(tmp); //要调用这个方法才可能抛出自定义异常
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println("请输入一个参数");
} catch (NumberFormatException e) {
System.out.println("请输入一个数字");
} catch (TmpException e) {
System.out.println("输出温度" + tmp);
}
}

static void checktmp(float t) throws TmpException {
if (t < -273.15) {
throw new TmpException("温度不能低于绝对零度");
}
}

}


两个问题


62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧