1-4java核心类库(下)总结
java核心类库(下) 总结
1.异常
Error 严重问题,一般不处理
Exception 进行处理
以上异常 必须处理 否则 代码运行出错
异常的处理
一般选用手动处理异常
使用 try catch()方法对异常进行处理
Throws 将异常抛出
将异常抛给JVM虚拟机
面试题
编译器异常和运行期异常的区别
编译异常是必须要处理的,否则编译不通过
运行期异常 可以不处理 也可以处理 建议处理
throw和throws的区别
finally关键字
final关键字 修饰常量 修饰方法和类 是一种最终修饰符 被修饰的方法和类不可别继承
finally 是try catch()方法里的一块代码空间 用于释放资源 是一定会被执行的
finalize 是object里的一个方法 用于垃圾回收 呼叫垃圾回收器
try catch() 中的return和finnaly,fanally执行完后,return会将是一些值 包括参数类型 方法调用的地址 方法返回数据进行打包返回 。
异常处理的变形
自定义异常
异常的注意事项
2.File
构造方法
绝对路径和相对路径
常用方法
递归
方法调用自己本身 称为递归调用
递归举例
递归的效率并不高 所以使用场景有限
3.IO流
IO流的分类
字节流分为字节输出流和字节输入流
字节流
字节输出流
字节输出流代码演示
字节输出流流程分析
字节输入流
代码演示
使用场景 文件复制
流程展示
复制代码演示
字符流
字符流:以“字符”的方式来操作文件
字符输出流 父类Write中定义五种输出的方法
字符输出流 子类 FileWrite的使用
字符输入流 Reader
代码演示
缓冲流
执行流程
代码演示
应用场景
字符缓冲流
转换流
编码引出的问题
转换输出流的使用
OutputStreamWriter转换输出流代码演示
序列化
执行原理
打印流
代码演示
4.多线程
线程概念
创建方式
创建方式一
继承Thread类
自定义类,继承Thread类,并且重写run()方法
注意事项
创建方式二
实现Runnable接口
自定义类,实现Runnable接口
Thread和Runnable的关系是什么?
Thread实现Runnable接口,关系对应的是实现关系
为什么将Runnable传到Thread构造中就可以执行Runnable重写的run方法?
在Thread之间中,会声明一个Runnable的类型叫 target,执行线程启动的start()方法,则会执行run()方法,
创建Thread对象后,会声明一个Runnable类型 target 在执行线程中的start方法时,会调用run方法,指向重写runnable中的run方法
匿名内部类的方式实现线程
Thread类的常用方法
线程池
概念、作用
代码演示
死锁
出现在代码块儿的同步嵌套中,例如线程A的代码块儿 run()方法中,使用了lock1 锁一,同时又嵌套了锁二 lock2 ,两个线程都在同时等待对方释放锁,然后继续执行当前代码块儿至方法结束,所以发生死锁。
代码演示
线程状态
等待唤醒
代码演示
5.网络编程
网络通信协议
网络编程的三要素
UDP通信程序
TCP通信
通过Socket的编程顺序
代码演示
6.反射
概念
也叫反向加载,跟“创建对象”有关,通过获取字节码,得到字节码对象
CSDN-Ada助手: 恭喜你写了第14篇博客!标题中的"NIO技术"让我感到非常兴奋,这是一个非常有深度和挑战的技术领域。你的持续创作令人钦佩,你对技术的热情和专注可见一斑。 在下一步的创作中,我建议你可以更深入地探讨NIO技术的实际应用场景和案例研究。例如,你可以分享一些你在实际项目中使用NIO技术所遇到的挑战和解决方案,这将为读者提供更具实践性的参考,使他们对NIO技术的理解更加全面。 同时,我也希望你能够继续保持谦虚的态度,虽然你已经写了14篇博客,但仍有很多知识和经验等待你去学习和探索。通过不断学习和分享,你将不仅仅对读者有所帮助,同时也会在自身的成长道路上不断进步。加油!
CSDN-Ada助手: 非常恭喜您撰写了第16篇博客《JDBC基础》!持续创作是一项了不起的成就,您的努力和热情可见一斑。在这篇博客中,您对JDBC的基础知识进行了深入的探讨,给读者提供了宝贵的学习资源。 接下来,我想提出一些建议,希望能对您的下一步创作有所帮助。首先,您可以考虑进一步拓展JDBC的应用场景,比如与其他技术的结合,或者在实际项目中的应用案例等。此外,您还可以尝试以更深入和高级的方式解释JDBC的相关概念,帮助读者更好地理解和应用这些知识。 最后,我想再次表达我对您的赞赏和支持。您的努力不仅对自己的学习有所裨益,也对读者们的技术成长起到积极的推动作用。期待看到您未来更多精彩的创作!