Java基础进阶类名整理
Posted 赶星而至丶
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础进阶类名整理相关的知识,希望对你有一定的参考价值。
Java进阶基础类名整理
类名综合
数学类:
Math:数学运算
BigDecimal:用于精确计算数据
数组工具类:
Arrays:数组工具类,用于对数组的操作
时间操作:
JDK8以前:
Date:表示一个时间,并面向对象操作时间
SimpleDateFormat:专门用于将时间对象与字符串进行相互转换的工具类
- 常见方法:parse(字符串):将字符串转换为时间对象
- format(Date对象):将时间对象转换为字符串
JDk8以后:
LocalDateTime:包含年月日时分秒的时间对象
常见方法:
- 静态now():获取当前时间
- 静态of(信息)获取指定时间对象
- format(DateTimeFormatter):按照指定格式格式化时间
- parse(字符串,DateTimeFormatter):按照指定格式解析该方法
LocalDate:表示年月日
LocalTime:表示时分秒
DateTimeFormatter:格式化时间类
- 获取方式:利用静态ofPattern(string pattern)
Period:计算年月日
Duration:计算时分秒
集合类类名
单列:
Collection:是单列集合的顶级接口,有两个接口List和Set
- 可重复List:
- ArrayList:单列可重复有索引的集合,底层是数组
- LinkedList:单列可重复有索引的集合,底层是链表
- 不可重复Set:
- TreeSet:不可重复,没有索引,可以对元素进行排序(自然排序Comparable/比较器排序Comparator),底层红黑树
- HashSet:存取无序,不可重复,没有索引,底层哈希表(Jdk7以前:哈希表=数组+链表/Jdk8以后数组+红黑树),自定义类需重写hashCode
双列:
- 特点:
- 键不能重复
- 键与值一一对应
- 键和值组成键值对
- HashMap:底层哈希表,存储对象,必须重写HashCode和equals方法
- TreeMap:底层红黑树,可以排序,自然排序Comparable/比较器排序Comparator
流
- Stream:对集合进行批量数据操作
文件
- File:表示文件或者文件夹
- 特点:只是表示路径名称,可以表示存在的,也可表示不存在的
Io流
字节流父类:
- InputStream:字节输入流
- OutPutStream:字节输出流
字节流子类:
- FileInputStream:字节输入流
- BufferedInputStream:字节缓冲输入流
- FileOutputStream:字节输出流
- BufferedOutputStream:字节缓冲输出流
字符流父类:
- Writer:字符数出流
- Read:字符输入流父类
字符流子类:
- FileWiter:字符输入流
- FileRead:字符输出流
- BufferedWiter:字符缓冲输入流
- BufferedRead:字符缓冲输出流
- InputStreamReader:字节转字符流的桥梁,使用指定编码进行解码
- OutputStreamWriter:字符流到字节流的桥梁,使用指定编码将写入的字符编码为字节
- JDK11之后可以直接使用FileReader进行指定编码
- ObjectOutputStream:对象输入流
- ObjectInputStream:对象输出流
- 想要序列化一个类必须实现Serializable接口
多线程
- synchronized:自动锁
- Lock:手动锁
- ArrayBlockingQueue:阻塞队列,底层数组,有界
- LinkedBlockingQueue:阻塞队列,底层链表,无界
- Executors:默认线程池
- ThreadPoolExecutor:自定义线程池
- AtomicBoolean:原子更新布尔类型
- AtomicInteger:原子更新整型
- AtomicLong:原子更新长整型
- Hashtable:采用悲观锁,效率低下
- ConcurrentHashMap:采用Synchronized+CAS,效率比Hashtable高比HashMap低
- CountDownLatch:一条线程等待其他线程执行完在执行
- Semaphore:控制线程同时访问数量
网络编程
InetAddress:表示ip地址
- 常用getHostName:获取主机名
- getHostAddress:返回ip地址
UDP协议:
- DatagramPacket:数据容器
- DatagramSocket:用于发送和接收DatagramPacket
- sen():发送数据报
- close():关闭数据报
- receive:接收数据报
TCP协议:
- Socket:对象在客户端和服务器之间建立连接
- ServerSocket:对象等待客户端建立连接
- 常用方法accept()等待连接
反射
- ClassLoader.getSystemClassLoader():获取系统类加载器
- InputStream.getResourceAsStream():加载某一个资源文件
- Class.forName(全类名):获取Class对象
- getConstructors:返回公共构造方法数组对象
- getFields():返回所有公共的成员变量数组
- getMethods():返回所有公共方法,包含父类公共方法
- 获取私有使用带Declared的get方法
- 利用反射使用私有成员设置setAccessible(true)
关键字
- transient:被标记的变量不可被实例化
- this 表示当前
- super 表父类
- final 表示最终
- static 表静态
- volatile:内存可见性
- enum:枚举
- abstract:抽象
以上是关于Java基础进阶类名整理的主要内容,如果未能解决你的问题,请参考以下文章