Java面试题(05)

1)设计一个Java程序,自定义异常类,从键盘输入一个字符串,如果该字符串值为“abc”,则抛出异常信息,如果从键盘输入的是其他字符串,则不抛出异常。

import java.util.Scanner;

class MyException extends Exception{

private String errorMsg;

//getter和setter方法

public MyException(String errorMsg){

this.errorMsg=errorMsg;

}

@Override

public String toString() {

return errorMsg;

}

}

public class Ex11 {

public static void main(String[] args) {

String strIn;

Scanner scan=new Scanner(System.in);

strIn=scan.nextLine();

try {

if(strIn.equals(“abc”))

throw new MyException(“输入的字符串不正确!“);

} catch (MyException e) {

System.out.println(e);

}

}

}

 

2)设计一个Java程序,从键盘输入两个数,进行减法运算。当输入串中含有非数字时,通过异常处理机制使程序正常运行。

import java.util.*;

public class Ex12 {

public static void main(String[] args) {

int num1,num2;

Scanner in=new Scanner(System.in);

try {

num1=in.nextInt();

} catch (InputMismatchException e) {

System.out.println(“第一个数格式不对“);

num1=0;

}

try {

num2=in.nextInt();

} catch (InputMismatchException e) {

System.out.println(“第二个数格式不对“);

num2=0;

}

System.out.println(“num1-num2=”+(num1-num2));

}

}

 

3)自定义异常类,在进行减法运算时,当第一个数大于第二个数时,抛出“被减数不能小于减数”,并编写程序进行测试。

 

import java.util.Scanner;

//MyException类的定义(同第11题)

public class Ex13 {

public static void main(String[] args) {

int num1,num2;

Scanner scan=new Scanner(System.in);

num1=scan.nextInt();

num2=scan.nextInt();

try {

if(num1<num2)

throw new MyException(“被减数不能小于减数“);

} catch (MyException e) {

System.out.println(e);

}

}

}

posted @ 2016-05-18 15:13  PyJava老鸟  阅读(433)  评论(0编辑  收藏  举报