Java入门笔记-(常见工具类)

异常处理类

Java入门笔记-(常见工具类)

异常:意外发生情况(其实就是因为程序员水平低),背离程序本身意图表现
Java入门笔记-(常见工具类)
- 程序错误
- 编译错误(马虎,括号遗漏,分号遗漏,编写)
- 运行错误(如图),需要捕获分析
Java入门笔记-(常见工具类)
- 处理异常
- 异常
- 异常类型
- 异常出现时的程序状态
- 抛出异常
- 捕获异常
- 寻找合适的处理器
Java入门笔记-(常见工具类)

Java入门笔记-(常见工具类)
Java入门笔记-(常见工具类)
五个关键字:try,throw,catch,finally,throws

try(捕获异常)-catch(处理异常)-finally(无论是否捕获,都执行)

Java入门笔记-(常见工具类)

  • e.printStackTrace 打印程序报错(堆栈信息)内容,位置不固定
  • System.exit(非零) 无条件终止Java虚拟机运行 -java.lang
  • 非检查异常会有提示,对于检查异常来说,可以使用/**文档注释解决。(Unhandled exception type Exception)

Java入门笔记-(常见工具类)

使用多重catch结构处理异常

Java入门笔记-(常见工具类)

return关键字的异常处理中的作用

Java入门笔记-(常见工具类)

throw和throws

Java入门笔记-(常见工具类)
- 规避可能出现的风险
- 完成一些程序的逻辑
- 通过throws在方法声明抛出异常时,可以抛出与对象throw对象相同的类型或者其父类。比如Throwable就是Exception的父类
Java入门笔记-(常见工具类)
Java入门笔记-(常见工具类)
Java入门笔记-(常见工具类)

Java入门笔记-(常见工具类)

自定义异常

Java入门笔记-(常见工具类)

Java入门笔记-(常见工具类)

异常链

捕获一个异常后再抛出另一个异常,也就是将异常发生的原因一个传一个串,即把底层的异常欣喜传给上层,这样逐层抛出。

Java入门笔记-(常见工具类)

Java入门笔记-(常见工具类)

包装器类实现基本数据类型的对象化处理

Java入门笔记-(常见工具类)

  • java.lang
    • 都是final,没有子类,无法继承
    • Byte,Float,Double,Long,Short.Integer都是继承自Number

基本数据类型和字符串之间的转换

Java入门笔记-(常见工具类)

小例子

  • ==如果比较的是对象的话,是比较的两者对应的内存空间是否相同。所以如果指向不同空间,肯定不相等
  • float和double没有对象常量池的概念

Java入门笔记-(常见工具类)

String,StringBuilder字符串操作原理

Java入门笔记-(常见工具类)

Java入门笔记-(常见工具类)

Java入门笔记-(常见工具类)

Java入门笔记-(常见工具类)

String和Byte转换,getBytes()

  • Utf-8中,一个汉字等于三个字节,一个英文等于一个字节

Java入门笔记-(常见工具类)

等于运算符与quuals方法的区别

Java入门笔记-(常见工具类)

Java入门笔记-(常见工具类)

字符串的不可变性

Java入门笔记-(常见工具类)

StringBuilder和StringBuffer(可变)

Java入门笔记-(常见工具类)

Java入门笔记-(常见工具类)

常用集合框架及实现类使用

Java入门笔记-(常见工具类)

迭代器

Java入门笔记-(常见工具类)

List(列表)

Java入门笔记-(常见工具类)
Java入门笔记-(常见工具类)

  • import java.util
  • collection
    • add
    • clear
    • contains 判断是否含有这个对象
    • equals,hashCode继承自Object
    • isEmpty
    • iterator 迭代器
    • remove 移除集合的某个元素
    • size 相当于数组中的length方法
    • toArray 转数组
  • List(Collection,Iterable的子接口)
    • get 返回列表中指定位置的元素
    • indexOf
    • sort 列表排序
  • ArrayList(实现类)
    • 构造函数

在list中存储并操作字符串信息

Java入门笔记-(常见工具类)

在list中存储并操作自定义对象

Java入门笔记-(常见工具类)

Set

  • Set是接口,没有构造方法
  • 插入失败,不会报错(重复元素不会显示)
  • addAll
  • add
  • clear
  • contains
  • equals
  • isEmpty
  • iterator
  • hashCode
  • removeAll
  • toArray
  • HashSet 实现类
    • 四个构造方法(不带参,带参(集合,容量,加载因子))

Java入门笔记-(常见工具类)

String类

Java入门笔记-(常见工具类)

自定义类

Java入门笔记-(常见工具类)

Map

Java入门笔记-(常见工具类)
- Interface Map

HashMap插入String对象

Java入门笔记-(常见工具类)

HashMap插入自定义对象

Java入门笔记-(常见工具类)

Java输入输出流进行文件读写

多线程实现数据并发通信

Java入门笔记-(常见工具类)

Java入门笔记-(常见工具类)

线程创建

通过继承Thread类的方式创建线程类,重写run()方法

  • 一个线程只能调用一次start方法。
  • 多个线程运行的先后顺序是随机的,获得CPU的使用权是随机的

Java入门笔记-(常见工具类)

Java入门笔记-(常见工具类)

实现Runnable接口创建线程

Java入门笔记-(常见工具类)

Java入门笔记-(常见工具类)

线程的状态和生命周期

  • 新建(New)
  • 可运行,就绪状态(Runnable) 调用start方法
  • 正在运行(Running) 获取CPU的运行权
  • 阻塞(Blocked)
  • 终止状态(Dead)
    Java入门笔记-(常见工具类)

Sleep方法

  • 多线程交叉执行
    Java入门笔记-(常见工具类)

join方法(抢占线程资源)

  • 添加指定时间后,时间结束后,资源解放,不再独占
    Java入门笔记-(常见工具类)

线程优先级

  • 优先级不代表执行顺序,有很大的随机性
    Java入门笔记-(常见工具类)

线程调度

Java入门笔记-(常见工具类)

多线程运行

Java入门笔记-(常见工具类)