随笔分类 -  Java / Java 基础

摘要:目录单例模式简介双重检查锁优缺点延迟加载模式(Initialization-on-demand holder idiom)优缺点饿汉模式优缺点枚举方式优缺点 单例模式简介 单例模式是一种创建型设计模式, 让你能够保证一个类只有一个实例, 并提供一个访问该实例的全局节点。 单例模式保证了系统内存中该类 阅读全文
posted @ 2024-01-16 10:53 LARRY1024 阅读(41) 评论(0) 推荐(0) 编辑
摘要:目录IOJava IO IO IO 即 Input/Output,输入和输出。数据输入到计算机内存的过程即输入,反之输出到外部存储(比如数据库,文件,远程主机)的过程即输出。 数据传输过程类似于水流,因此称为 I/O 流。 Java IO IO 流在 Java 中分为输入流和输出流,而根据数据的处理 阅读全文
posted @ 2024-01-06 19:34 LARRY1024 阅读(16) 评论(0) 推荐(0) 编辑
摘要:目录简介语法区别 简介 Lambda 表达式是 JDK 8 的一个新特性,可以取代大部分的匿名内部类,写出更优雅的Java代码,尤其在集合的遍历和其他集合操作中,可以极大地优化代码结构。但 Lambda 表达式并不能取代所有的匿名内部类,只能用来取代函数接口(Functional Interface 阅读全文
posted @ 2024-01-05 22:47 LARRY1024 阅读(18) 评论(0) 推荐(0) 编辑
摘要:目录引言I/O 简介为什么要使用 NIO流与块的比较多路复用 IO传统 IO 模型Reactor 事件驱动模型单线程 Reactor 事件驱动模型基于线程池的 Reactor 事件驱动模型基于主从的 Reactor 事件驱动模型Java 对多路复用 IO 的支持Buffer缓冲区的存储方式非直接缓冲 阅读全文
posted @ 2023-11-07 18:46 LARRY1024 阅读(26) 评论(0) 推荐(0) 编辑
摘要:目录对象的创建类加载分配内存内存分配的两种方式内存分配并发问题初始化零值设置对象头执行 init 方法对象的内存布局对象的访问定位句柄直接指针 HotSpot 虚拟机在 Java 堆中对象分配、布局和访问的全过程。 对象的创建 类加载 虚拟机遇到一条 new 指令时,首先将去检查这个指令的参数,是否 阅读全文
posted @ 2023-10-27 09:49 LARRY1024 阅读(87) 评论(0) 推荐(0) 编辑
摘要:目录线程状态操作系统中线程的状态Java 中的线程状态NEWRUNNABLEBLOCKEDWAITINGTIMED_WAITINGTERMINATEDJava 中创建线程的方式继承 Thread 类实现 Runnable 接口实现 Callable 接口,并结合 Future 实现通过线程池创建线程 阅读全文
posted @ 2023-10-26 12:43 LARRY1024 阅读(22) 评论(0) 推荐(0) 编辑
摘要:目录代理模式代理模式分类静态代理实现方式动态代理JDK 动态代理实现方式CGLIB 动态代理实现方式cglib 与 JDK 动态代理的区别三种代理方式对比 代理模式 代理模式(Proxy Pattern)是一种结构型设计模式,它给某一个对象提供一个代理,并由代理对象控制原对象的引用。代理对象在客户端 阅读全文
posted @ 2023-10-18 11:55 LARRY1024 阅读(54) 评论(0) 推荐(0) 编辑
摘要:目录Condition可中断锁和不可中断锁有什么区别?原理源码分析awaitaddConditionWaiterunlinkCancelledWaiterssignaltransferForSignal总结await 与 signalLock 和 Condition 的应用附录链表中头节点的作用不带 阅读全文
posted @ 2023-10-17 17:33 LARRY1024 阅读(105) 评论(0) 推荐(0) 编辑
摘要:目录ThreadLocalThreadLocal 实现线程隔离的原理ThreadLocal 内存泄漏场景 ThreadLocal ThreadLocal是一个将在多线程中为每一个线程创建单独的变量副本的类; 当使用ThreadLocal来维护变量时, ThreadLocal会为每个线程创建单独的变量 阅读全文
posted @ 2023-10-17 11:37 LARRY1024 阅读(27) 评论(0) 推荐(0) 编辑
摘要:目录ReentrantLockReentrantLock 特性概览源码分析抽象同步器:Sync非公平同步器:NonfairSync公平同步器:FairSync小结 ReentrantLock ReentrantLock 是一个可重入的互斥锁,又被称为“独占锁”。 ReentrantLock 类实现了 阅读全文
posted @ 2023-10-17 11:36 LARRY1024 阅读(16) 评论(0) 推荐(0) 编辑
摘要:synchronized 关键字 synchronized 是 Java 中的一个关键字,翻译成中文是同步的意思,主要解决的是多个线程之间访问资源的同步性,可以保证被它修饰的方法或者代码块在任意时刻只能有一个线程执行。 使用方法 修饰实例方法 给当前对象实例加锁,进入同步代码前要获得 当前对象实例的 阅读全文
posted @ 2023-10-17 11:33 LARRY1024 阅读(17) 评论(0) 推荐(0) 编辑
摘要:目录锁的分类乐观锁和悲观锁悲观锁乐观锁乐观锁的实现版本号机制CAS 算法乐观锁的问题ABA 问题循环时间长开销大只能保证一个共享变量的原子操作对比自旋锁和适应性自旋锁无锁、偏向锁、轻量级锁、重量级锁可重入锁和非可重入锁公平锁和非公平锁读写锁和排它锁JUC 包下的锁抽象类 AQS/AQLS/AOS接口 阅读全文
posted @ 2023-10-11 17:34 LARRY1024 阅读(38) 评论(0) 推荐(0) 编辑
摘要:目录Java 集合List, Set, Queue, Map 的区别集合框架底层数据结构CollectionListSetQueueMap如何选用集合?ListArrayList 和 Array(数组)的区别转换ArrayList 转换为数组数组转换为 ArrayListSetComparable 阅读全文
posted @ 2023-10-10 17:45 LARRY1024 阅读(113) 评论(0) 推荐(0) 编辑
摘要:目录并发容器类并发 MapConcurrentMapConcurrentHashMapConcurrentSkipListMap并发 Queue并发 Set阻塞队列BlockingQueue 的操作方法BlockingQueue 的实现类ArrayBlockingQueueLinkedBlockin 阅读全文
posted @ 2023-10-08 14:27 LARRY1024 阅读(32) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示
🚀
回顶
收起
  1. 1 404 not found REOL
404 not found - REOL
00:00 / 00:00
An audio error has occurred.