异常分类:

         Exception       RuntimeException

         非运行时期异常     运行时期异常

 

自定义异常

        

 

IO流:

         Java中的io流是用来处理不同设备间的输入输出问题的

         io流操作的类都在io包中;

         io流分类:

                   流向分:

                            输入流   读取数据

                            输出流     写入数据

                   按操作数据不同:

                            字节流

                            字符流

File类:

         构造方法

         常见方法:

                   创建:

                            createNewFile():当文件不存在时,创建文件

                                     当没有给出指定路径时,以当前项目路径为文件创建路径。

                                               相对路径和绝对路径---常使用【相对路径+绝对路径】

                            public boolean mkdir():创建文件夹【目录】

                            public boolean mkdirs():创建多级文件夹

                                     注意事项:要调用那个方法,自己一定要明白。

                   删除:

                            public boolean delete():删除文件【夹】

                            注意:删除目录下还有内容,必须把所有内容删除完毕后,再删目录

                                  删除文件不走回收站

                   判断:

                            boolean exits():判断file对象是否存在

                            boolean isFile():判断file对象是否是文件夹

                            boolean isDirectory():判断file对象是否是文件夹

                            boolean isAbsolute():判断file对象是否是绝对路径

                            boolean canRead():判断file对象是否可读

                            boolean canWrite():判断file对象是否是可写

                            boolean isHidden():判断file对象是否隐藏

                   获取:

                            String getAbstractPath():获取绝对路径

                            String getPath():获取相对路径

                            String getName():获取文件【夹】名

                            long length():获取长度,字节数

                            long lastModified():获取最后的修改时间毫秒值

                           

                   重要的获取功能:

                            public static Files[] listRoots():列出系统文件根目录

                            public String[] lists():返回指定目录下,文件【夹】的名称数组

                            public File[] listFiles():返回指定目录下,文件【夹】的对象数组

                   文件过滤器:

                            public String[] list(FilenameFilter filter)

 

 

 

1:final,finally,finalize的区别:

         final:关键字修饰符;

                   修饰类,该类不能被继承;

                   修饰变量,变量是一个常量,在定义时就赋初值,以后只能引用,不能修改;

                   修饰方法,该方法不能被子类重写;

         finally:异常处理的一个模块,一般情况下,finally中的代码都会被执行,常用与清除操作。

         finalize:方法名。Java 技术允许使用 finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。

 

 2:finally里面的代码永远会执行:

         不一定永远执行,如在执行finally前执行了System.exit(0);硬件毁坏,断电等也会可能中断执行。

 

 3:在catch里有return语句,finally中的代码是否执行;若执行,是在return前,还是return后:

         结论:

                   1、不管有木有出现异常,finally块中代码都会执行;

                   2、当try和catch中有return时,finally仍然会执行;

                   3、finally是在return后面的表达式运算后执行的,函数返回值是在finally执行前确定的;

                   4、finally中最好不要包含return,否则程序会提前退出,返回值不是try或catch中保存的返回值