Java学习
Weleness
戒骄戒躁,禁欲禁心
展开
-
LinkedList源码解析
LinkedList源码解析LinkedListLinkedList内部构造构造方法默认的无参构造有参构造添加(add)方法根据索引获得元素的方法getXX与peekxx的区别根据元素获得元素索引的方法检测链表中是否包含某个元素的方法删除(remove/pop)方法思考 LinkedList LinkedList是一个实现了List接口和Deque接口的双端链表。由于底层的实现是由链表实现的,使得它支持高效的插入和删除操作,同时实现的Deque接口,又使得它拥有队列的特性。LinkedList不是线程安全的原创 2020-07-10 23:29:31 · 428 阅读 · 1 评论 -
ArrayList源码解析
ArrayList源码解析前言ArrayList源码解析ArrayList简介ArrayList核心源码并发修改异常 ConcurrentModificationExceptionforeach循环为什么会出现ConcurrentModificationException异常 前言 这里首先建议小伙伴们自己去阅读源码,然后有条件的可以自己手写一遍,先看,然后根据自己的感觉去写,不会的可以抄源码,但是要知道这段代码的作用是什么。 ArrayList源码解析 ArrayList简介 ArrayList 的底层原创 2020-06-30 21:11:03 · 473 阅读 · 0 评论 -
Java基础知识复习(四)
Java基础知识复习(四)AQSAQS核心思想AQS实现原理AQS底层使用了模板方法模式AQS源码分析独占式(默认非公平锁)共享式 AQS AQS是一个用来构建锁和同步器的框架,使用AQS能简单且高效地构造出应用广泛的大量的同步器,比如我们提到的 ReentrantLock,Semaphore,其他的注入 ReentrantReadWriteLock,SynchronousQueue,FutureTask等等都是基于AQS的,我们也可以利用AQS构造出符合我们自己需求的同步器。 AQS核心思想 AQS核心思原创 2020-06-22 22:00:20 · 415 阅读 · 0 评论 -
Java基础知识复习(三)
Java基础知识复习(三)5 Java并发synchronized如何使用 synchronized 关键字synchronized关键字底层原理Synchroized和ReentrantLock的区别乐观锁悲观锁独占锁共享锁公平锁非公平锁可重入锁(递归锁)偏向锁轻量级锁自旋锁自适应自旋锁锁消除锁粗化死锁 5 Java并发 synchronized synchronized是jdk提供的jvm层面的同步机制。他解决的是多线程之间访问共享资源的同步问题,它保证再它修饰的方法或代码块同一时间只有一个线程执行。原创 2020-06-15 23:17:20 · 392 阅读 · 0 评论 -
Java基础知识复习(二)
这里写目录标题2、Java面向对象2.1 面向对象和面向过程的区别2.2 构造器2.1.1. 构造器Constructor是否可被override2.1.2. 为什么要在一个类中定义一个不做事的无参构造方法2.1.3. 一个类的构造方法的作用是什么。若没有在类中定义构造方法,对象是否能够被正确创建2.1.4. 在调用子类构造方法之前会先调用父类没有参数的构造方法,其目的是?2.2 面向对象的特性2.3 抽象类和接口2.3.1. 接口和抽象类的区别2.4 内部类2.4.1 内部类的特点2.4.2 为什么内原创 2020-06-14 23:00:58 · 381 阅读 · 0 评论 -
Java基础知识复习(一)
Java常见基础知识 1.Java基本功 1.1.1 Java语言有那些特点 简单易学(相比c++来说,Java容易上手); 面向对象(三大特性,封装,继承,多态); 跨平台(平台无关性,Java虚拟机实现与平台无关; 健壮性; 安全性; 体系结构中立(编译过的**.java**文件会变为字节码文件,这些字节码文件与特定的计算机结构体系无关); 多线程(Java是第一个支持并发程序设计的主流语言); 支持网络编程并且很方便( Java 语言诞生本身就是为简化网络编程设计的,因此 Java 语言不仅支持网络原创 2020-06-09 21:55:37 · 510 阅读 · 1 评论