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

异常处理类

这里写图片描述

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

这里写图片描述
这里写图片描述
五个关键字:try,throw,catch,finally,throws

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

这里写图片描述

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

这里写图片描述

使用多重catch结构处理异常

这里写图片描述

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

这里写图片描述

throw和throws

这里写图片描述
- 规避可能出现的风险
- 完成一些程序的逻辑
- 通过throws在方法声明抛出异常时,可以抛出与对象throw对象相同的类型或者其父类。比如Throwable就是Exception的父类
这里写图片描述
这里写图片描述
这里写图片描述

这里写图片描述

自定义异常

这里写图片描述

这里写图片描述

异常链

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

这里写图片描述

这里写图片描述

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

这里写图片描述

  • java.lang
    • 都是final,没有子类,无法继承
    • Byte,Float,Double,Long,Short.Integer都是继承自Number
基本数据类型和字符串之间的转换

这里写图片描述

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

这里写图片描述

String,StringBuilder字符串操作原理

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

String和Byte转换,getBytes()
  • Utf-8中,一个汉字等于三个字节,一个英文等于一个字节

这里写图片描述

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

这里写图片描述

这里写图片描述

字符串的不可变性

这里写图片描述

StringBuilder和StringBuffer(可变)

这里写图片描述

这里写图片描述

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

这里写图片描述

迭代器

这里写图片描述

List(列表)

这里写图片描述
这里写图片描述

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

这里写图片描述

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

这里写图片描述

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

这里写图片描述

String类

这里写图片描述

自定义类

这里写图片描述

Map

这里写图片描述
- Interface Map

HashMap插入String对象

这里写图片描述

HashMap插入自定义对象

这里写图片描述

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

多线程实现数据并发通信

这里写图片描述

这里写图片描述

线程创建

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

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

这里写图片描述

这里写图片描述

实现Runnable接口创建线程

这里写图片描述

这里写图片描述

线程的状态和生命周期
  • 新建(New)
  • 可运行,就绪状态(Runnable) 调用start方法
  • 正在运行(Running) 获取CPU的运行权
  • 阻塞(Blocked)
  • 终止状态(Dead)
    这里写图片描述
Sleep方法
  • 多线程交叉执行
    这里写图片描述
join方法(抢占线程资源)
  • 添加指定时间后,时间结束后,资源解放,不再独占
    这里写图片描述
线程优先级
  • 优先级不代表执行顺序,有很大的随机性
    这里写图片描述
线程调度

这里写图片描述

多线程运行

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值