学习java第13天个人总结
Day13个人总结
一、异常
1、概念: 异常是程序在运行期发生不正常的事件导致系统执行异常,异常又分为异常和错误,错误是JVM内部导致,程序员不做处理,下面介绍异常中的受检异常和非受检异常。 2、 非受检异常 非受检异常是指代码有可能发生异常,而对这段有可能发生异常的代码进行抛出和处理,非受检异常隶属于父类RuntimeException,用法如下
3、 受检异常 受检异常是指某代码段一定会发生异常,程序在编译的时候就已经发生错误,程序员必须要对其进行处理和抛出的异常,受检异常隶属于父类Exception,使用如下:
受检异常和非受检异常都是通过try{}catch(){}finally{}来对代码异常进行捕获,其中try中是装执行的代码,catche()用于判断异常类型,如果是的那么就执行catch(){}方法体中的内容,finally{}中的代码一定会执行,主要用于关闭数据库,和清理功能。
受检异常和非受检异常继承图:
4、 throws和throw的使用 两者都是抛出异常,在用法上有一定的额区别对比如下 throw:主要是用于产生异常抛出异常对象,在方法的内部使用,可以抛出一个异常对象类型,不能直接抛出受检异常 throws:主要用于抛出异常类,用法是跟在方法名后面接上异常类型,可以同时抛出多种异常类型 |
二、内部类
1、概念: 内部类分为:成员内部类、静态内部类、局部内部类和匿名内部类,内部类主要用于管理外部类的属性和方法的 2、成员内部类特点: 1)成员内部类类似于外部类中的成员属性和方法 2)可以用四中访问权限修饰符修饰public private protected default 3)成员类中不能使用static关键字 4)成员内部类中可以使用外部类的属性和方法(包括私有的) 5)如果内部类和外部类中的属性和方法名一样,那么内部类优先使用自己的属性和方法,在内部类中this也代表内部类本身,如果要想要调用外部类中的属性和方法,需要通过new一个外部类对象来调用 6)创建内部类对象,需要先创建外部类对象,通过创建外部类对象在去创建内部类对象:通过外部类对象.new 内部类(); 7)在其他类中创建内部类对象,需要导包 3、静态内部类特点 1)类似于外部类的静态属性和方法,用static class类名定义 2)可以存在静态或者是非静态的属性和方法 3)内部类属性如果和外部属性名相同,优先调用内部的,如果想调用外部的需要new对象 4)创建对象的方式:Inner in = new Inner();创建的时候也需要导包 5)静态内部类主要用于建造者模式 4、局部内部类 1)局部内部类的声明位置放在方法中 2)不能用修饰符 3)里面可以出现非静态的属性和方法 4)创建对象:只能在声明内部类的方法中 5)如果想要局部内部类执行,必须调用声明局部内部类的方法 5、匿名内部类 1)匿名内部类主要是用于接口实现类的对象 2)匿名内部类的优点是节省代码,但是是在创建一次的情况下才会节省代码 3)匿名内部类是创建子类的对象,由于是匿名的所以需要父类名字来代替
|