-
重识 ArrayList
重识 ArrayList 前言 ArrayList 作为 Java 集合框架中最常用的类,在一般情况下,用它存储集合数据最适合不过。知其然知其所以然,为了能更好地认识和使用 ArrayList,本文将从下面几方面深入理解 ArrayList: 为什么不用数组,用 ArrayList ArrayList 特性的源码分析...
-
Java内存模型详解
Java内存模型详解 前言 Java内存模型(Java Memory Model,简称JMM),即Java虚拟机定义的一种用来屏蔽各种硬件和操作系统的内存访问差异,以实现让java程序在各种平台下都能够达到一致的内存访问效果的内存模型。本篇文章大致涉及到五个要点:Java内存模型的基础,主要...
-
volatile底层实现原理
volatile底层实现原理 前言 当共享变量被声明为volatile后,对这个变量的读/写操作都会很特别,下面我们就揭开volatile的神秘面纱。 1.volatile的内存语义 1.1 volatile的特性 一个volatile变量自身具有以下三个特性: 可见性:即当一个线程修改了声明为volatile变量的...
-
学并发编程,透彻理解这三个核心是关键
学并发编程,透彻理解这三个核心是关键 写在前面 上一篇文章这次走进并发的世界,请不要错过 给大家带了并发编程的开胃菜,接下来我们逐步上正餐,在吃正餐之前,我还要引用那首诗词: 「横看成岭侧成峰,远近高低各不同」,远看看轮廓,近看看细节,不断切换思维或视角...
-
关于Java单例模式中双重校验锁的实现目的及原理
关于Java单例模式中双重校验锁的实现目的及原理 开始复习设计模式,一开始理解单例模式中的双重校验锁卡住了,想通了后就自己做了段思维导图来帮助自己理解。 其实理解下来并不难,但还是记录下来帮助自己回忆和借机试试养成写博客的习惯~ public class Singleton { pr...
-
effective java 3th item1:考虑静态工厂方法代替构造器
effective java 3th item1:考虑静态工厂方法代替构造器 传统的方式获取一个类的实例,是通过提供一个 public 构造器。这里有技巧,每一个程序员应该记...
-
JDBC 数据库连接池
JDBC 数据库连接池 数据库连接池原理-传统方式 当有多个线程,每个线程都需要连接数据库执行SQL语句的话,那么每个线程都会创建一个连接,并且在使用完毕后,关闭连接。 创建连接和关闭连接的过程也是比较消耗时间的,当多线程并发的时候,系统就会变得很卡顿。 同时,...
-
Java多线程编程(2)--多线程编程的术语与概念
Java多线程编程(2)--多线程编程的术语与概念 一.串行、并发和并行 ??为了更清楚地解释这三个概念,我们来举一个例子。假设我们有A、B、C三项工作要做,那么我们有以下三种方式来完成这些工作: ??第一种方式,先开始做工作A,完成之后再开始做工作B,以此类推,知道完...
2019-09-02 09:50:34 多线程编程java多线程java并发编程实战java并发编程java多线程编程文档文件定义硬件虚拟机
-
基于注解的SpringAOP源码解析(二)
基于注解的SpringAOP源码解析(二) 在上篇文章 中我们搭建了一个阅读源码的demo工程,然后简单介绍了一下 @EnableAspectJAutoProxy 注解,这个注解最重要的功能就是为向Spring中注入了一个bean AnnotationAwareAspectJAutoProxyCreator ,本篇文章就继续来撸AOP的源码...
-
你真的会用单例模式?
你真的会用单例模式? 单例模式可以说只要是一个合格的开发都会写,但是如果要深究,小小的单例模式可以牵扯到很多东西,比如:多线程是否安全?是否懒加载?性能等等。还有你知道几种单例模式的写法呢?如何防止反射破坏单例模式? 一、 单例模式 1.1 定义 单例模式就...
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash
