内部类以及抛出异常

java基础知识

内部类

定义:就是一个类的内部定义一个类;

1、成员内部类:

当定义了内部类的方法需要访问的时候,需要通过外部类进行new;

Outer o1 = new Outer();
Outer.Inner o2 = o1.new Inner(); //o1是new的外部类的名

**可以获得外部类的私有属性(这就很牛)

一个java类中,只有一个public类,可以有多个class类;

2、局部内部类;

public class Outer {
    public void meth(){
        class Inner{    //局部内部类
            public void in(){
                
            }
        }
    }
}

匿名类:

new inner().eat();   //inner是个类,eat是类中的方法;

不知道是谁,但是直接调用方法的这种就是匿名类;

异常机制 exception

定义:程序运行中出现的问题;

异常的类型:检查性异常:最具代表性的是用户错误或问题引起的异常(难以预见);

运行时异常:可以在编译时被忽略,运行时异常;

错误:error,脱离程序员控制的问题;

都是Throwable的子类;

关键字:try,catch,finally,throw,throws;

try{监控区域} catch{抛出异常,想要捕获的错误类型}Fnally{善后工作}

public class Test {
    public static void main(String[] args) {
        int a=1;
        int b=0;
       try {
           System.out.println(a/b);
       }catch (ArithmeticException e){
           System.out.println("出现异常,除数不能为零!");
       }catch (Throwable f){
           System.out.println("异常了");
​
       }
       finally {//善后工作
           System.out.println("finally");
       }
    }
}

注意:当需要捕获多个错误的时候,需要把最小的写前面,最大的如Throwable写在最后,才能捕获到。

写异常的快捷键:Ctrl+Alt+T;

主动抛出异常:

public class Test {
    public static void main(String[] args) {
        new Test().test(1,0);
        }
    
    
    public void test(int a,int b){
        if(b==0){
            throw new ArithmeticException();//主动的抛出异常,一般在方法中;
        }
    }
}

当处理不了的时候,可以直接抛出去;使用Throws;

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值