java知识点梳理
2024-12-18 16:11:42 0 举报
AI智能生成
Java是一种广泛使用的编程语言,具有跨平台、面向对象、多线程等特性。以下是Java知识点的梳理。
作者其他创作
大纲/内容
一、基础语法
数据类型
基本数据类型:byte、short、int、long
基本数据类型:float、double
基本数据类型:char、boolean
引用数据类型:类、接口、数组
变量声明与初始化
变量的声明方式
变量的初始化
变量的作用域
常量(final关键字)
运算符
算术运算符
赋值运算符
关系运算符
逻辑运算符
位运算符与三元运算符
控制流语句
if - else条件语句
switch - case多分支语句
for循环语句
while与do - while循环语句
break与continue语句
return语句
方法定义与调用
方法的定义
方法的调用
参数传递:值传递
参数传递:引用传递
二、面向对象编程(OOP)
类与对象的概念
类的定义
对象的创建与使用
构造方法与析构方法
this关键字的使用
封装
访问修饰符:private
访问修饰符:default
访问修饰符:protected
访问修饰符:public
继承
extends关键字的使用
方法重写
super关键字的使用
继承中的构造方法调用
多态
方法重载
方法重写
对象的向上转型
对象的向下转型
抽象类与抽象方法
abstract关键字的使用
抽象类的特点
抽象方法的使用
抽象类与接口的区别
接口
interface的定义
implements关键字的使用
接口的默认方法
接口的多继承
内部类
成员内部类
静态内部类
局部内部类
匿名内部类
三、异常处理
异常的概念与分类
检查型异常
非检查型异常
自定义异常
异常链
异常处理机制
try - catch语句
finally语句
多catch语句的使用
异常的抛出(throw关键字)
自定义异常
继承Exception类
继承RuntimeException类
自定义异常的使用场景
异常信息的传递
异常链
Throwable的initCause方法
异常链的构建
异常链的打印
异常链的应用场景
四、数组
数组的定义与初始化
静态初始化
动态初始化
多维数组的定义
不规则数组的定义
数组的访问
索引访问
数组元素的获取与修改
数组越界异常
数组的长度
数组的遍历
for循环遍历
增强for循环遍历
Arrays类的使用
数组与集合的转换
多维数组
多维数组的定义与初始化
多维数组的访问与遍历
多维数组的应用场景
多维数组与一维数组的转换
五、字符串
String类的特性
不可变性
常量池
字符串拼接
字符串比较
字符串的创建
字面量创建
new关键字创建
intern方法的使用
String类的构造方法
字符串的常用方法
length()方法
charAt()方法
substring()方法
equals()与equalsIgnoreCase()方法
indexOf()与lastIndexOf()方法
concat()与replace()方法
其他常用方法
StringBuffer和StringBuilder
可变字符串的概念
StringBuffer的使用
StringBuilder的使用
线程安全性比较
六、集合框架
集合框架的体系结构
Collection接口
List接口
Set接口
Map接口
ArrayList和LinkedList
ArrayList的特点与使用场景
LinkedList的特点与使用场景
ArrayList与LinkedList的区别
List接口的常用实现类
Vector和ArrayList
Vector的特点
Vector与ArrayList的比较
Vector的同步性
Vector的常用方法
HashSet、LinkedHashSet和TreeSet
HashSet的特点与应用
LinkedHashSet的特点与应用
TreeSet的特点与应用
Set接口的常用实现类
HashMap、LinkedHashMap和TreeMap
HashMap的特点与应用
LinkedHashMap的特点与应用
TreeMap的特点与应用
Map接口的常用实现类
集合的遍历
迭代器Iterator
增强for循环
forEach方法
集合遍历的注意事项
并发集合
ConcurrentHashMap的使用
CopyOnWriteArrayList的使用
CopyOnWriteArraySet的使用
并发集合的应用场景
七、泛型
泛型的概念与作用
泛型的引入
泛型的好处
泛型的使用场景
泛型的类型参数
泛型类与泛型方法
泛型类的定义与使用
泛型方法的定义与使用
泛型类与泛型方法的区别
泛型擦除的概念
泛型的边界
extends关键字的使用
super关键字的使用
泛型边界的应用场景
泛型边界的注意事项
类型擦除的概念与影响
类型擦除的原理
类型擦除的影响
桥接方法
泛型信息的保留
八、IO流
IO流的分类
字节流与字符流
输入流与输出流
节点流与处理流
缓冲流与非缓冲流
File类的使用
文件的创建与删除
目录的创建与遍历
文件的属性获取
文件的重命名与移动
字节流
InputStream与OutputStream
FileInputStream与FileOutputStream
BufferedInputStream与BufferedOutputStream
DataInputStream与DataOutputStream
字符流
Reader与Writer
FileReader与FileWriter
BufferedReader与BufferedWriter
InputStreamReader与OutputStreamWriter
缓冲流
缓冲流的作用
BufferedInputStream与BufferedOutputStream的使用
BufferedReader与BufferedWriter的使用
缓冲流的应用场景
缓冲流与节点流的区别
序列化与反序列化
Serializable接口的使用
ObjectInputStream与ObjectOutputStream的使用
序列化与反序列化的应用场景
序列化中的注意事项
九、多线程
线程的概念与创建方式
线程的概念
继承Thread类创建线程
实现Runnable接口创建线程
Callable接口与Future接口的使用
线程创建的注意事项
线程的生命周期
新建状态
就绪状态
运行状态
阻塞状态与死亡状态
线程状态的转换
线程生命周期的管理
线程的同步
synchronized关键字的使用
Lock接口与ReentrantLock类的使用
synchronized与Lock的区别
线程同步的应用场景
线程的通信
wait、notify、notifyAll方法的使用
生产者-消费者问题
线程通信的应用场景
线程通信中的注意事项
线程池
Executor框架的使用
ThreadPoolExecutor类的使用
线程池的配置参数
线程池的应用场景
原子类
AtomicInteger类的使用
AtomicLong类的使用
原子类的应用场景
原子类与synchronized的区别
十、反射
反射的概念与作用
反射的定义
反射的作用
反射的应用场景
反射的注意事项
Class类的获取方式
对象.getClass()方法
类名.class方式
Class.forName()方法
Class类的常用方法
通过反射创建对象
无参构造方法创建对象
有参构造方法创建对象
通过反射创建对象的注意事项
通过反射创建对象的应用场景
通过反射调用方法
获取方法对象
调用方法
调用静态方法
调用方法的注意事项
通过反射访问字段
获取字段对象
访问字段的值
设置字段的值
访问字段的注意事项
0 条评论
下一页