![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
知识点复习
皮皮不皮
自我学习用,在网上整合的一些资料,若有侵权私我删
展开
-
Java面经总结
Javaint范围,Integer缓存范围:-232~231缓存:Integer中有个静态内部类IntegerCache,里面有个cache[],也就是Integer常量池,常量池的大小为一个字节(-128~127)。自动装箱的过程(Integer a=10):引用了valueOf()的方法补码问题8位二进制, 使用原码或反码表示的范围为[-127, +127], 而使用补码表示的范围为[-128, 127].因为第一位表示的是符号位.而使用补码表示时又可以多保存一个最小值.HashMa原创 2020-09-08 13:42:26 · 141 阅读 · 0 评论 -
04 Java多线程
一、基础1、并发和并行并行(parallel):指在同一时刻,有多条指令在多个处理器上同时执行。并发(concurrency):指在同一时刻只能有一条指令执行,但多个进程指令被快速的轮换执行2、进程和线程进程是操作系统资源分配的基本单位,线程是任务调度和执行的基本单位每个进程都有独立的代码和数据空间,进程之间切换开销大;同一类线程共享代码和数据空间,每个线程都有自己独立的运行栈和程序计数器(PC),线程之间切换的开销小一个进程可以包括多个线程。3、线程的创建继承Thread类:需要实原创 2020-05-28 21:18:03 · 93 阅读 · 0 评论 -
06Mysql数据库
Mysql数据库一、基础1.1、事务的隔离级别读未提交:如果一个事务已经开始写数据,则另外一个事务不允许同时进行写操作,但允许其他事务读此行数据。解决了丢失修改读已提交:如果一个读事务允许其他事务读写,如果是写事务则禁止其他事务访问数据。解决了丢失修改和脏读可重复读:在一个事务内,多次读同一数据,在这个事务还没结束时,其他事务不能访问该数据(包括读写)。避免了丢失修改,不可重复读和脏读可串行化:要求事务一个接一个执行,最高级别。1.2、并发事务的问题丢失修改:两个事务更新同一数据,最后原创 2020-05-19 19:05:00 · 85 阅读 · 0 评论 -
05 java框架
一、MyBatis1.1Mybatis和ORM概念MyBatis:持久层框架,Mybatis可以使用xml文件和注解的方式配置和映射原生类型,接口和java对象为数据库中记录ORM:对象关系映射,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系型数据库中1.2Mybatis如何解决JDBC问题数据库链接创建、释放频繁造成系统资源浪费从而影响系统性能;解决:在mybatis-config.xml中配置数据链接池,使用连接池管理数据库连接。Sql语句写在代码中造原创 2020-05-19 19:04:47 · 122 阅读 · 0 评论 -
03Java 虚拟机
一、JVM1.1.JVM运行时数据区:程序计数器:当前线程所执行的字节码的行号指示器Java 虚拟机栈:用于存储局部变量表、操作数栈、动态链接、方法出口等信息;本地方法栈(Native Method Stack):与虚拟机栈的作用是一样的,只不过虚拟机栈是服务 Java 方法的,而本地方法栈是为虚拟机调用 Native 方法服务的;堆:Java 虚拟机中内存最大的一块,是被所有线程共享的,几乎所有的对象实例都在这里分配内存方法区:用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译后的代码原创 2020-05-19 19:03:50 · 102 阅读 · 1 评论 -
02Java集合
一、概览容器主要包括Collection 和 Map两种,Collection 存储着对象的集合,而 Map 存储着键值对(两个对象)的映射表。1. SetTreeSet:基于红黑树实现,支持有序性操作,例如根据一个范围查找元素的操作。但是查找效率不如 HashSet,HashSet 查找的时间复杂度为 O(1),TreeSet 则为 O(logN)。Integer 和String 对象都可以进行默认的TreeSet 排序,而自定义类的对象是不可以的,自己定义的类必须实现Comparable 接口原创 2020-05-19 19:03:10 · 169 阅读 · 0 评论 -
01Java 基础
一、数据类型1、基本类型byte/8char/16short/16int/32float/32long/64double/64boolean/~2、包装类型基本类型都有对应的包装类型,基本类型与其对应的包装类型之间的赋值使用自动装箱与拆箱完成。Integer x = 2; // 装箱 调用了 Integer.valueOf(2)int y = x; // 拆箱 调用了 X.intValue()3、缓存池new Integer(123) 与 Inte原创 2020-05-19 17:15:07 · 125 阅读 · 0 评论