Home > Java > javaTutorial > Exception handling in Java

Exception handling in Java

黄舟
Release: 2017-02-22 10:05:58
Original
1362 people have browsed it

1. Example 1
//try-catch handles exceptions

public class Error {

	public static void main(String[] args) {
		
		int num1=34,num2=0;
		
		//使用try包裹住会产生异常的代码段
		
		try{
		
			System.out.println(num1/num2);
			
		}
		
		//使用catch去处理对应的异常
		
		catch(ArithmeticException error){
		
		//处理方法
		
			System.err.println("运算错误,除数不能为0!");
			
		}
		
		System.out.println("程序运行结束!");
		
	}
}
Copy after login

Result verification:
Operation error, the divisor cannot be 0!
The program is finished!
2. Example 2

import java.util.InputMismatchException;

import java.util.Scanner;
 
public class Error {
 
    public static void main(String[] args) {
    	
        Scanner input = new Scanner(System.in);
        
        System.out.println("请输入第一个数字:");
        
        //使用try包裹住会产生异常的代码段
        
        try{
            int num1=input.nextInt();
            
            System.out.println("请输入第二个数字:");
            
            int num2=input.nextInt();
            
            System.out.println(num1/num2);
        }
        
        //使用catch去处理对应的异常
        
        catch(ArithmeticException error1){
        	
            //处理方法
        	
            System.err.println("运算错误,除数不能为0!");
            
        }catch(InputMismatchException error2){
        	
            System.err.println("请输入正确的数字!");
        }
        
        System.out.println("程序运行结束!");
         
    }
}
Copy after login

Result verification:

Result one:
Please enter the first number:
123
Please enter the second number:
123
1
The program is finished!
Result 2:
Please enter the first number:
123
Please enter the second number:
b
Please enter the correct number!
The program is finished!

Result 3:
Please enter the first number:
123
Please enter the second number:
0
Operation error, divisor It cannot be 0!
The program is finished!

3. Example 3
//Convert user input string to integer
3.1

public class Error {
		
		String str;
		
		public Error(String str) {
			
			this.str = str;
		}

			public  String Transform(){
				try{
					
					int num = Integer.parseInt(str);
					
				}catch(NumberFormatException num){
					
					System.out.println("字符串转整型,请输入正确的数字:");
					
				}catch(Exception e){
					
				}
				return str;
		}		
}
Copy after login



//Write a test class, call the data type conversion method, and pass the parameters "Good!" and 20

public class ErrorDemo {
	
	public static void main(String[] args) {
		
		Error er = new Error("Good!");
		
		er.Transform();
		
		System.out.println(er.str);

	}

}
Copy after login



String conversion Integer, please enter the correct number:
Good!
3.2

public class Error {
         
        int num = 0;
         
        public Error() {
            
          
        }
        
        public Error(int num) {
             
            this.num = num;
        }
 
        public  int TransformtoInt(String str){
              
        	try{
                     
                 int num1 = Integer.parseInt(str);
                     
                }catch(NumberFormatException num){
                     
                    System.err.println("字符串转整型,请输入正确的数字:");
                     
                }catch(Exception error){
                     
                	error.printStackTrace();
                	
                }
        return num;
        }      
}
Copy after login



import java.util.Scanner;

public class ErrorDemo {
     
    public static void main(String[] args) {
   
    	Scanner input = new Scanner(System.in);
        
    	System.out.println("请输入一个数字:");
    	
    	String str = input.next();
    	
    	Error toInt = new Error();
    	
        toInt.TransformtoInt(str);
         
        System.out.println(str);
 
    }
 
}
Copy after login

Verification:

Please enter a number:
123
123

Please enter a number:
abc
Convert string to integer, please enter Correct number:
abc

4. Example 4
//[b]throws, throw throws exception[/b]

public class Error {
         
    String sex ;
 
    public Error() {
       
    }
 
    public String getSex() {
    	
        return sex;
        
    }
 
    public void setSex(String sex) throws Exception {
         
            if(sex.equals("男")|sex.equals("女")){
            	
                this.sex = sex;
                
            }else{
         
                throw new Exception("性别必须为男或者女!");
            }              
    }          
}
Copy after login



public class ErrorDemo {
 
     
    public static void main(String[] args) {
     
        Error er = new Error();
        
        try{
        	
            er.setSex("熊");
            
        }catch(Exception error){
        	
            error.printStackTrace();
        }
        
        System.out.println("程序结束");
 
    }
 
}
Copy after login

java.lang.Exception: Gender must be male or female!
at Error.setSex(Error.java:22)
at ErrorDemo.main(ErrorDemo.java:9)
End of program

5、
Custom exception
//Create Excption subclass to inherit [b]ExcptionParent class[/b]

//创建类

public class Error {
         
    String sex ;
 
    public Error() {
       
    }
 
    public String getSex() {
    	
        return sex;
        
    }
 
    public void setSex(String sex) throws Exception {
         
            if(sex.equals("男")|sex.equals("女")){
            	
                this.sex = sex;
                
            }else{
         
                throw new ExceptionDemo("性别必须为男或者女!");
            }              
    }          
}
Copy after login



//创建ExceptionDemo子类

public class ExceptionDemo extends Exception {

	public ExceptionDemo() {
		super();
		
	}

	public ExceptionDemo(String message) {
		super(message);
		
	}
	
}
Copy after login



//创建测试类

import java.util.Scanner;

public class ErrorDemo {
 
     
    public static void main(String[] args) {
     
        Error er = new Error();
        
        try{
        	
        	Scanner next = new Scanner(System.in);
        	
        	System.out.println("请输入性别:");
        	
            er.setSex(next.next());
            
        }catch(Exception error){
        	
            error.printStackTrace();
        }
        
        System.out.println("程序结束!");
 
    }
 
}
Copy after login

Result verification:
Please enter gender:
Male
End of program!

Please enter your gender:

nan
ExceptionDemo: 性别必须为男或者女!
at Error.setSex(Error.java:23)
at ErrorDemo.main(ErrorDemo.java:10)
Copy after login

The program is over!

The above is the content of Java exception handling. For more related content, please pay attention to the PHP Chinese website (www.php.cn)!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template