初学Java, 遇到官员throws IOException的问题 书中例子,如下代码运行报错
public class DemoDoWhileTest {
public static void main(String[] args) throws IOException
{
char i=0;
do{//do-while 循环,打印出选课菜单
System.out.println("1:数学");
System.out.println("2:语文");
System.out.println("3:英语");
System.out.println("4:物理");
System.out.println("5:化学");
System.out.println("请输入选择的课程编号:");
i=(char)System.in.read();//获得用户输入
//使用switch语句来根据用户的输入判断输出结果
switch(i){
case '1':
System.out.println("您选择的是数学课程");
case '2':
System.out.println("您选择的是语文课程");
case '3':
System.out.println("您选择的是英语课程");
case '4':
System.out.println("您选择的是物理课程");
case '5':
System.out.println("您选择的是化学课程");
default:
System.out.println("没有你输入的课程号,请输入1~5之间的数字");
}
} while (i<'1'||i>'5');
}
}
Exception in thread "main" java.lang.NoClassDefFoundError: IOException
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2451)
at java.lang.Class.getMethod0(Class.java:2694)
at java.lang.Class.getMethod(Class.java:1622)
at sun.launcher.LauncherHelper.getMainMethod(LauncherHelper.java:494)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:486)
Caused by: java.lang.ClassNotFoundException: IOException
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 6 more
对异常处理机制还没有学习过,请指导。
public class TestIOException {
public static void main(String[] args) throws IOException {
char i = 0;
do {// do-while 循环,打印出选课菜单
System.out.println("1:数学");
System.out.println("2:语文");
System.out.println("3:英语");
System.out.println("4:物理");
System.out.println("5:化学");
System.out.println("请输入选择的课程编号:");
i = (char) System.in.read();// 获得用户输入
// 使用switch语句来根据用户的输入判断输出结果
switch (i) {
case '1':
System.out.println("您选择的是数学课程");
case '2':
System.out.println("您选择的是语文课程");
case '3':
System.out.println("您选择的是英语课程");
case '4':
System.out.println("您选择的是物理课程");
case '5':
System.out.println("您选择的是化学课程");
default:
System.out.println("没有你输入的课程号,请输入1~5之间的数字");
}
} while (i < '1' ------解决方案-------------------- i > '5');
}