Java异常处理和IO流基础知识

文章详细介绍了Java中的异常处理机制,包括try-catch-finally的finally执行机制,Exception与Error的区别,以及Throw和Throws的用法。同时,讲解了JavaI/O流的基本概念,分类,如字符流与字节流,以及I/O与NI/O的区别。此外,还提到了Java反射创建对象的过程和类的加载机制。
摘要由CSDN通过智能技术生成

目录

1.try-catch-finally中的finally的执行机制

2.什么是Exception和Error

3.Throw和Throws的区别

4.Error与Exception区别

5.Java中的I/O流是什么,分为几类

6.I/O与NI/O

7.常用的I/O的类有哪些

8.字符流与字节流的区别

9.Java反射创建对象

10.什么是类的加载过程


1.try-catch-finally中的finally的执行机制

1.finally的执行先于try或catch中的return

2.无论是否出现异常finally仍然会执行

3.finally中一般写入一定会执行的代码;如数据库的连接、输入输出流、数据库的释放

2.什么是Exception和Error

1.Java可抛出的结构有三种:编译时异常CheckedException、运行时异常RuntimeException、错误Error

2.编译时异常:Exception和除了运行异常外的Exception子类都属于编译时异常。Java编辑器会对其进行检查,要么使用throws抛出或使用try-catch进行处理,否则无法编译通过。

3.运行时异常:RuntimeException及其子类都被称为运行时异常。Java编辑器不会对其进行检查,是在运行时出现的异常。

4.错误:Error类及其子类都属于错误。和运行时异常一样,Java编辑器不会对其进行检查,当资源不足、约束失败或者程序无法继续执行的时候会产生错误

3.Throw和Throws的区别

1.Throw:手段抛出一个异常;使用在方法内部

2.Throws:处理异常的一种方式;使用在方法的声明处

4.Error与Exception区别

1.error表示的是系统错误,无法使用程序来进行处理,比如内存溢出。

   exception表示的是异常,异常能够通过程序来进行捕捉或者进行使用优化来避免,即当程序运行正常时不会出现异常情况。

5.Java中的I/O流是什么,分为几类

1.I/O流用于处理设备之间的数据传输,在Java中,数据的输入输出操作以流(stream)的方式进行。

2.流的分类:

按照流的单位不同:字符流、字节流

按照流的流向不同:输入流、输出流

按照流的角色不同:节点流、处理流

节点流:直接作用在文件上的流;处理流:包住节点流的流

6.I/O与NI/O

1.I/O:用于设置之间的数据传输,数据的输入输出以流的方式进行,是面向进行的操作。

2.NI/O:1.4版本引入的一套新的I/O的API,数据的输入输出以的方式进行,是面向缓冲区的操作。

NI/O是面向缓冲区的操作,因此能够更加高效地进行读写操作。

7.常用的I/O的类有哪些

抽象基类:InputStream OutputStream Reader Writer

文件流:FileInputStream FileOutputStream FileReader FileWriter

缓冲流:BufferedInputStream BufferedOutputStream BufferedReader BufferedWriter

8.字符流与字节流的区别

字符流:以字符为单位进行输入输出数据,按照两个字节16位传输

字节流:以字节为单位进行输入输出数据,按照8位传输

9.Java反射创建对象

1.Java中可以使用反射进行对象创建

//通过反射:Class类中的newInstance()方法
Class clazz = Person.class;
Person p = (Person) clazz.newInstance();

2.使用反射创建对象需要先查找类资源,然后使用类加载器创建,过程繁琐,效率没有new+构造器效率高

10.什么是类的加载过程

        程序经过javac.exe后,会生成一个或多个字节码.class文件;然后使用java.exe对字节码文件进行解释运行,相当于将字节码文件加载到内存中,这个过程就叫做类的加载。并且加载到内存中的类,就叫做运行时类,也就是Java.lang.Class的一个实例。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值