siemens800 发表于 2013-2-7 18:23:53

java exception

http://topic.csdn.net/u/20090108/22/dc7e85d9-8196-47be-a66c-83f7a6f86865.html?57688550
用户输入10个数(整型),否则抛出自定义异常,并且将此数置0,
如果总数>1000,则抛出自定义异常,并且将总和写入磁盘文件(在自定义异常中做)。
 
sadfsf
ExceptionTest .java
package com.javaeye.lindows.exception; import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.FileOutputStream;import java.io.IOException;public class ExceptionTest {    private static final int MAX = 1000;    public static void main(String[] args) throws OutOf1000Excetion {      int[] inputData = getInputData();                int sum = 0;      for(int i = 0; i < inputData.length; i++)            sum += inputData;      if(sum > 1000)            throw new OutOf1000Excetion(sum, "Out of 1000");      System.out.println("Sum=" + sum);    }    private static int[] getInputData() {      int size = 10;      int ret[] = new int;      DataInputStream dis = new DataInputStream(System.in);      String temp = null;      for (int i = 0; i < 10; i++) {            System.out.println("please enter integer[" + i + 1 + "]:");            try {                temp = dis.readLine();                if (!temp.matches("[+-]?\\d+")) {                  temp = "0";                  throw new NotIntegerException("Not Integer.");                }            } catch (Exception e) {            }            ret = Integer.parseInt(temp);      }      return ret;    }}class NotIntegerException extends Exception {    public NotIntegerException() {      super();    }    public NotIntegerException(String message) {      super(message);    }}class OutOf1000Excetion extends Exception {    public OutOf1000Excetion(int sum, String message) {      super(message);      writeToDisk(sum);    }      private void writeToDisk(int sum)    {      DataOutputStream dos = null;      try {            dos = new DataOutputStream(new FileOutputStream("D:\\input.txt"));            dos.write(String.valueOf(sum).getBytes());            dos.flush();            dos.close();      } catch (Exception e) {            e.printStackTrace();            if(dos!=null)                try {                  dos.close();                } catch (IOException e1) {                  e1.printStackTrace();                }            return;      }    }} 
 
asdfaf
页: [1]
查看完整版本: java exception