• java基础_异常


    package j2se;
    import java.util.Scanner;
    
    public class DM002 {
    	public static void main(String[] args) {
    		DT d=new DT();
    		try{//这里去处理,这里不想处理,就在主函数上边第5行再往上抛,抛给jre
    			d.qq();
    		}
    		catch(Exception e){
    			System.out.println("输入有误");
    		}
    		finally{
    			System.out.println("程序继续运行中");
    		}
    
    	}
    }
    
    class DT{
    	Scanner in=new Scanner(System.in);
    	public void qq() throws Exception{//抛给调用这个方法的地方去处理,向上抛
    		int a=in.nextInt();
    		int b=in.nextInt();
    		int c=a%b;
    		System.out.println("余数为"+c);
    
    	}
    }
    

      ======

    package j2se;
    import java.util.*;
    
    class DM{
    	Scanner in=new Scanner(System.in);
    	public void qy(){
    		try{
    			int a=in.nextInt();
    			int b=in.nextInt();
    			int c=a%b;
    			System.out.println("余数为"+c);
    		}
    		catch(Exception e){
    			System.out.println("输入有误");
    		}
    		finally{//finally最后一定会执行
    			System.out.println("程序运行中");
    		}
    	}
    }
    public class DM001 {
    	public static void main(String[] args) {
    		DM d=new DM();
    		d.qy();
    	}
    }
    

      =====手动一个新的异常

    package j2se;
    
    public class MyException extends Exception {
    	public MyException(){
    		
    	}
    	
    	public MyException(String message){
    		super(message);
    	}
    }
    

    ==============================

    package j2se;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.IOException;
    public class TestReadFile {
    	public static void main(String[] args) {
    		String str=new TestReadFile().openFile();
    		System.out.println(str);
    	}
    
    	String openFile(){
    		try{
    			System.out.println("aaa");
    			FileInputStream fis=new FileInputStream("d:/a344.txt");
    			int a=fis.read();
    			System.out.println("bbb");
    			return "step1";//先确定返回的值,并不会直接结束运行
    		}catch(FileNotFoundException e){
    			System.out.println("catching!!!!!!!");
    			return "step2";
    		}catch(IOException e){
    			e.printStackTrace();
    			return "step3";
    		}finally{
    			System.out.println("finally");
    			//return "fff";//不要在finally是使用return
    		}
    	}
    }
    

      

     try catch finally  return 执行顺序

    1.先执行try catch ,给返回值赋值

    2.执行finally

    3.return

  • 相关阅读:
    strpos 判断字符串是否存在
    TP 自动验证
    label 标签的用法,点label选中单选、复选框或文本框
    str_replace 替换 小技巧
    数据库文件MDF的空间占满了,没有自动增长是怎么回事?
    (4.7)mysql备份还原——深入解析二进制日志(3)binlog的三种日志记录模式详解
    (4.6)mysql备份还原——深入解析二进制日志(2)binlog参数配置解析
    (1.16)mysql server优化之buffer pool
    COALESCE函数
    linux网络设置和虚拟机克隆转移之后网卡找不到
  • 原文地址:https://www.cnblogs.com/youning/p/6828325.html
Copyright © 2020-2023  润新知