java 的一道题目,在线等待!!!!

bobshi 2002-11-09 10:09:06
题目:
   用户存款程序,其中利用自己编写的例外类,完成如下功能:
   1。开户(至少存1元,否则例外处理)
   2。存入(存入的金额要>0,否则例外处理)
   3。取款(取款的金额要<存款的金额,否则例外处理)
   4。最后退出。

我想问一下这个例外类是什么意思?是不是内部类。
...全文
32 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
bobshi 2002-11-10
  • 打赏
  • 举报
回复
题目我以用Exception做了,不过总是出错,大家可不可以帮我看看!!
import java.io.*;
class openException extends Exception
{

};
class depositException extends Exception
{

};
class fetchException extends Exception
{

};
class Deposit
{
private float depositmoney;
public void openanaccount(float n)
{
if(n<1)
{
throw new openException();
}
else
{
depositmoney=n;
}
}
public void deposit(float m)
{
if(m<0)
{
throw new depositException();
}
else
{
depositmoney+=m;
}
}
public void fetch(float x)
{
if(x>depositmoney)
{
throw new fetchException();
}
else
{
depositmoney-=x;
}
}
public void quit()
{
System.out.println("welcome come in!");
}
};
class depositTest
{
public static void main(String[] args) //throws Exception
{
Deposit a=new Deposit();
String openstr,depositstr,fetchstr;
BufferedReader openbr=new BufferedReader(new InputStreamReader(System.in));
BufferedReader depositbr=new BufferedReader(new InputStreamReader(System.in));
BufferedReader fetchbr=new BufferedReader(new InputStreamReader(System.in));
try
{
System.out.print("input open an accout money:");
openstr=openbr.readLine();
float openmoney=Integer.parseInt(openstr);
a.openanaccount(openmoney);

System.out.print("input deposit:");
depositstr=depositbr.readLine();
float dep=Integer.parseInt(depositstr);
a.deposit(dep);

System.out.print("input fetch:");
fetchstr=fetchbr.readLine();
float fet=Integer.parseInt(fetchstr);
a.fetch(fet);
}
catch(openException e1)
{
System.out.println("open an account of money can not less 1 yuan!");
}
catch(depositException e2)
{
System.out.println("deposit can not less 0 yuan!");
}
catch(fetchException e3)
{
System.out.println("fetch more than deposit");
}
finally
{
a.quit();
}

}
};

编译时提示:
---------- javac -d . ----------
depositTest.java:21: unreported exception openException; must be caught or declared to be thrown
throw new openException();
^
depositTest.java:32: unreported exception depositException; must be caught or declared to be thrown
throw new depositException();
^
depositTest.java:43: unreported exception fetchException; must be caught or declared to be thrown
throw new fetchException();
^
3 errors
Normal Termination
Output completed (2 sec consumed).
mercury1231 2002-11-10
  • 打赏
  • 举报
回复
这里的例外类就是指需要你自己定义Exception,如果需要,就抛出你自定义的Exception , 跟内部类没什么关系。

不过我觉得这里的流程不用Exception Control可能更好
hotenM 2002-11-09
  • 打赏
  • 举报
回复
我想应该是要求你抛出异常把
throw new Exception("至少存1元");
fastmask 2002-11-09
  • 打赏
  • 举报
回复
例外类就是异常类。他说得例外处理就是异常处理了,有c++的基础就会明白了
hotenM 2002-11-09
  • 打赏
  • 举报
回复
Execetpion——异常

62,634

社区成员

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

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