第一阶段总结(二)
常用类:
Object类
hashcode()
toString()
clone()
getClass()
notify()
wait()
equals
Math类:常见的数学运算
Random类:生成随机数 UUD
File类:创建文件 查看文件 修改文件 删除文件
包装类:自动装箱和拆箱
Date类:
Date
SimpleDateFormat
Calendar(建议使用)
String类 : 不可变性 final 操作量较少
StringBuffer: 可变长 append() 多线程数据量较大 效率低 安全
StringBuilder:可变长 单线程数据量较大 效率高 不安全
集合框架
Collection:
List:(有序 可以重复)
ArrayList: add remove contains size
LinkedList: getFirst() getLast() removeFirst() addFirst() ...
Vector
Stack
Set:(无序 不可重复)
HashSet(常用)
TreeSet
Iterator:迭代器
Map:
HashMap(重点,面试高频问点):
JDK1.7:数组+链表
JDK1.8:hash表 = 数组 + 链表 + 红黑树
TreeMap
Collections :工具类
泛型<>:约束,避免类型转换之间的问题
IO流:
字节流:
InputStream:输入
OutputStream:输出
字符流:
Writer
Reader
节点流: CharArrayReader CharArrayWriter CharArrayOutputstream CharArrayInputstream
StringReader StringWriter
pipe(管导流) PipedOutStream
File(...)
处理流:
buffer: bufferInputStream bufferOutputStream bufferReader bufferWriter
序列化 反序列化 Serializable transient(透明的)
filter
Object
Data:DataInputStream DataOutputStream
转换流: InputstreamReader OutputStreamWriter
Print:PrintWriter PrintStream
多线程
进程和线程
run(), start()
线程创建的方式:
Thread: start() 本地方法:java无权调用,交给底层c处理 private native void start();
Runnable:函数式接口 lambda
Callable:可以有返回值
静态代理: new Thread(Runnable).start();
Lambda表达式:函数式编程
避免内部类定义过多
new Thread(()->{System.out.println();}).start();
线程的状态: 新建状态 就绪 运行 阻塞 死亡
常用的方法:
sleep
join
yield
isLive
start
setPriority
interrupt()
线程同步:多个对象操作同一个资源 ,并发问题
队列 + 锁
Synchronized:
同步方法 弊端:锁太多
同步代码块(常用)
第一个线程进来拿到锁,后面就要排队了,直到这个人释放锁,后面拿到锁才能进去。
死锁:两个人都抱着对方的锁。
互斥
请求与保持
不剥夺条件
循环等待条件
Lock:ReentrantLock(优先级高)
lock
trylock
unlock
线程通信
缓冲区:消息队列
信号灯(标志位)
wait();
notifyall();
线程池
池化技术
池的大小
最大连接数
保持时间
网络编程
IP
端口
Socket编程
TCP: 三次握手 四次挥手 面向连接
UDP:无连接 Packet
URL
初始Tomcat
聊天通信
文件上传
GUI:
AWT:
Frame
监听事件:
鼠标
键盘
窗口
文本框
动作事件
Swing:
文本框
标签
按钮
文本域
面板
布局方式
关闭窗口
列表
贪吃蛇:
Timer
键盘监听
游戏帧的概念
注解和反射
注解:
元注解
内置注解
自定义注解
反射读取注解
反射:
Class类 : newInstance()
类加载机制
Method :invoke(user3,"秦疆")
存在重载,也需要写参数类型
Field:set(user4,"秦疆")
Construct: newInstance
获取的时候需要传递参数的class类型
破坏私有关键字 setAccessible(true);
性能分析: 正常>检测关闭的反射>默认的反射
反射获得注解,泛型..