自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 数据库命令(SQL语言)

数据库命令(SQL语言) create database db_foo; 建库 show databases; 展示数据库 use db_foo;切换到foo数据库 drop database db_foo;删库 create table tb_student(name char(32),age int,c_name varchar(32));建表 show tables;展示表 select * from tb_student;显示表内容 drop table tb_student;删表 alter

2020-12-02 23:36:40 286

原创 CopyOnWriteArrayList

CopyOnWriteArrayList简单实现 常用方法和ArrayList差不多;但是没有capacity; size方法实现一样; add方法:先上锁,别人就不能往里面防值了; 拿到一个数组,定义len为它的长度,然后拷贝这个数组,长度为旧数组长度加一,就是因为要加入一个值,这个过程就像CAS的前半部分,拿出来改了放回去。新数组的最后一个值就是新加入的值。 写入过程是安全的,因为加锁了 indexof方法没有加锁,isEmpty没有加锁,contains没有加锁,lastIndexOf也没有加锁,to

2020-12-02 23:29:08 59 1

原创 ReentrantLock

ReentrantLock底层源码实现 NonFairSync继承了Sync:尝试立即去加锁,如果锁状态拿到锁之后,调用setExclusiveOwnerThread,哪个线程正在执行,如果没有人持有锁,就换成1,并获知哪个线程持有锁。如果持有到了锁,调用acquire(arg) 锁状态方法(expect、update):比较并设置状态(AQS底层实现是用CAS),其实是调用CAS过程,比较并设置锁状态——针对当前这个锁对象,加一个锁状态,然后记住哪一个线程加上了锁状态,以后就可以改变这个对象了。如果没加上

2020-12-02 23:27:47 58

原创 HashMap

HaspMap默认容量16,最大容量2的30次方,默认加载因子0.75倍,树结构 塌缩成链表最小转化成树的容量为64, 节点Node两个值(K、V),只有向后的值,当有值传进来,改变节点的Value,然后判断两个值是否相等:在内存里是否相等。 计算hash,用key。用来确定放在哪个位置。计算方法:如果key等于空,那么hash等于0,如果不等于0 ,就用自身和自身的逻辑右移进行异或(高位16位取反,低16位与高16位异或)。 底层用数组实现,数组里面有拉链,node的节点数组,名为table,HaspMa

2020-12-02 23:24:38 175

原创 ArrayList源码层

ArrayList源码层 构造方法: 有参数: 参数为int,如果参数大于0,创建一个大小为参数值的容器赋值给elementData;如果参数等于0,让elementData等于EMPTY_ELEMENTDATA;如果参数小于0,抛出一个异常。 参数为其他容器(容器的元素类型必须和你创建的这个容器的泛型及它的子类保持一致), 无参数: 如果没有参数,就让elementData等于DEFAULTCAPACITY_EMPTY_ELEMENTDATA ensureCapacity()方法 ensureCapaci

2020-11-09 22:48:01 66

原创 第二节课笔记

Java基础: 1、基本元素(四类八种): 整数型: byte short int long 浮点型: 单精度浮点型(float) 双精度浮点型(double) 字符型 布尔型:不能转换成int型。 2、类型转换: 低类型向高类型转换为自动转换。 高类型向低类型转换为强制转换。 类型高低排序(从高到低):double、folat、long、int、short、byte、char。 3、类名命名法: 类名以大写字母开头,符合驼峰命名法。 4、标识符 声明格式:类型 标识符 赋值格式: 标识符 = 字面量 两种

2020-10-21 21:19:33 91

原创 2020-10-20

计算机原理 1、认识计算机。 计算机的组成:主板、CPU、内存、硬盘、外接设备。 存储单元:高速缓存、内存、硬盘。高速缓存与内存交换数据的速度最快,但是存储空间都非常小。内存与CPU交换数据的速度不如高速缓存,但是存储空间比高速缓存大的多。硬盘与CPU交换数据的速度最慢,但是它的存储空间是最大的。 并行和并发:单核CPU在执行多个任务时为了提高效率可以进行并发操作,即两个任务交替进行,但由于CPU速度非常快,所以在宏观上看起来就是两个任务在同时进行。但是会产生CAS。 2、计算机的使用。 用户想

2020-10-20 21:32:57 142

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除