【Java从入门到实践】编程大神转Java的真实学习记录--Java中级

简介: 【Java从入门到实践】编程大神转Java的真实学习记录--Java中级

第六部分:异常处理


处理异常:try - catch - finally

抛出异常:throws,throw

throws与throw这两个关键字接近,不过意义不一样,有如下区别:

1. throws 出现在方法声明上,而throw通常都出现在方法体内。

2. throws 表示出现异常的一种可能性,并不一定会发生这些异常;throw则是抛出了异常,执行throw则一定抛出了某个异常对象


异常分类:

1、可查异常CheckedException,如果不处理,编译器不让通过

2、非可查异常(运行时异常RuntimeException、错误Error)


Throwable类:Exception和Error都继承了该类。所以在捕捉的时候,也可以使用Throwable进行捕捉。异常分Error和Exception,Exception里又分运行时异常和可查异常

自定义异常:继承自Exception

抛出自定义异常


第七部分:I/O


第八部分:Lambda


基本使用

方法引用

聚合操作


第九部分:多线程


三种实现方式:继承线程类、Runnable接口、匿名类

常见线程方法


sleep      当前线程暂停

join      加入到当前线程中

setPriority  线程优先级

yield      临时暂停

setDaemon  守护线程


线程同步

线程安全集合

死锁

线程交互:Object方法,wait、notify和notifyAll。需要结合synchronized使用

线程池:类似生产者消费者,消费的对象是一个个能够运行的任务

1. 准备一个任务容器

2. 一次性启动10个 消费者线程

3. 刚开始任务容器是空的,所以线程都wait在上面。

4. 直到一个外部线程往这个任务容器中扔了一个“任务”,就会有一个消费者线程被唤醒notify

5. 这个消费者线程取出“任务”,并且执行这个任务,执行完毕后,继续等待下一次任务的到来。

6. 如果短时间内,有较多的任务加入,那么就会有多个线程被唤醒,去执行这些任务。


Lock对象

原子访问

相关文章
|
2月前
|
IDE Java 编译器
java编程最基础学习
Java入门需掌握:环境搭建、基础语法、面向对象、数组集合与异常处理。通过实践编写简单程序,逐步深入学习,打牢编程基础。
233 1
|
2月前
|
Java
如何在Java中进行多线程编程
Java多线程编程常用方式包括:继承Thread类、实现Runnable接口、Callable接口(可返回结果)及使用线程池。推荐线程池以提升性能,避免频繁创建线程。结合同步与通信机制,可有效管理并发任务。
174 6
|
2月前
|
存储 Oracle Java
java零基础学习者入门课程
本课程为Java零基础入门教程,涵盖环境搭建、变量、运算符、条件循环、数组及面向对象基础,每讲配示例代码与实践建议,助你循序渐进掌握核心知识,轻松迈入Java编程世界。
315 0
|
2月前
|
安全 前端开发 Java
从反射到方法句柄:深入探索Java动态编程的终极解决方案
从反射到方法句柄,Java 动态编程不断演进。方法句柄以强类型、低开销、易优化的特性,解决反射性能差、类型弱、安全性低等问题,结合 `invokedynamic` 成为支撑 Lambda 与动态语言的终极方案。
168 0
|
2月前
|
负载均衡 Java API
grpc-java 架构学习指南
本指南系统解析 grpc-java 架构,涵盖分层设计、核心流程与源码结构,结合实战路径与调试技巧,助你从入门到精通,掌握高性能 RPC 开发精髓。
314 7
|
3月前
|
Java
Java基础学习day08-作业
本作业涵盖Java中Lambda表达式的应用,包括Runnable与Comparator接口的简化实现、自定义函数式接口NumberProcessor进行加减乘及最大值操作,以及通过IntProcessor处理整数数组,实现遍历、平方和奇偶判断等功能,强化函数式编程实践。
84 5
|
存储 安全 Java
24、使用 Java 官方教程学习:① 类变量和类方法详解;② 深入介绍 main() 方法
24、使用 Java 官方教程学习:① 类变量和类方法详解;② 深入介绍 main() 方法
202 1
【JAVA学习之路 | 进阶篇】Map接口及其实现类及常用方法
【JAVA学习之路 | 进阶篇】Map接口及其实现类及常用方法
|
Java 测试技术 C++
【JAVA学习之路 | 进阶篇】File类及常用方法
【JAVA学习之路 | 进阶篇】File类及常用方法
【JAVA学习之路 | 进阶篇】方法引用与构造器引用
【JAVA学习之路 | 进阶篇】方法引用与构造器引用