摘要:1、对象的实例化内存布局与访问定位 1.1、对象实例化的几种方式 1)new:最常见的方式,静态方法,xxxBuild/xxxFactory的静态方法 2)Class的newInstance():反射的方式,只能调用空参构造器,权限必须是public 3)Constructor的newInstanc
阅读全文
摘要:目录: 1、堆1.1、进程中堆的唯一性1.2、堆空间关于对象创建和和GC的概述1.3、堆的细分内存结构1.4、堆空间大小的设置和查看1.5、新生代与老年代中相关参数的设置1.6、对象分配的一般过程1.7、对象分配的特殊情况1.8、代码举例与JVisualVM演示对象的分配过程1.9、常用优工具概述与
阅读全文
摘要:1、ABA问题描述 在多线程场景下CAS会出现ABA问题,关于ABA问题这里简单科普下,例如有2个线程同时对同一个值(初始值为A)进行CAS操作,这三个线程如下: 线程1,期望值为A,欲更新的值为B 线程2,期望值为A,欲更新的值为B 线程1抢先获得CPU时间片,而线程2因为其他原因阻塞了,线程1取
阅读全文
摘要:1、java线程池如何合理配置核心线程数? 线程池合理的线程数你是如何考虑的?这也是之前面试遇到的一个题:1.先看下机器的CPU核数,然后在设定具体参数:System.out.println(Runtime.getRuntime().availableProcessors());即CPU核数 = R
阅读全文
摘要:1、jdk动态代理失效 接口 public interface UserDao { void add(); void delete(); void update(); void find(); } 实现类 public class UserDaoImpl implements UserDao { @
阅读全文
摘要:一、引言 DO、DTO、BO、AO、VO、POJO的概念看似简单,但是想区分好或者理解好也不容易,本文简单梳理一下。通过各层POJO的使用,有助于提高代码的可读性和可维护性。 二、区别 《阿里巴巴Java开发规范》关于领域模型的部分介绍如下: 分层领域模型规约: DO(Data Object):此对
阅读全文
摘要:https://blog.csdn.net/u012109105/article/details/47003949 方式一:在正则表达式前面添加(?i) @Test public void test_replaceAll33(){ String input = "I like Java,jAva i
阅读全文
摘要:https://www.cnblogs.com/barrywxx/p/13233373.html
阅读全文
摘要:另外参考:Java8中的Stream API基本用法总结 目录: 1、Stream API说明2、Stream的实例化3、Stream的中间操作 3.1、筛选和切片 3.2、映射 3.3、排序4、Stream的终止操作 4.1、匹配与查找 4.2、归约 4.3、收集 1、Stream API说明 <
阅读全文
摘要:参考:JDK8的LocalDateTime用法 参考资料:好好学Java https://mp.weixin.qq.com/s/Dd_7yUh3lq3TqE2cjsYXvw JDK8新特性里提供了3个时间类:LocalDate、LocalTime、LocalDateTime 在项目开发中,已经需要对
阅读全文
摘要:目录: 1. 获取数据库连接2. 使用 Statement 执行更新操作3. 使用 ResultSet 执行查询操作4. 使用 PreparedStatement5. 利用反射及 JDBC 元数据编写通用的查询方法6. DAO 设计模式7. JDBC 元数据8. 获取插入记录的主键值9. 处理 Bl
阅读全文
摘要:目录: 1、状态模式定义2、状态模式类图3、状态模式案例:糖果机 3.1、需求 3.2、老办法实现 3.3、使用状态模式实现 3.4、状态模式实现糖果机代码 3.5、状态模式的优点 1、状态模式定义 <--返回目录 状态模式定义:允许对象再内部状态改变时改变它的行为,对象看起来就好像修改了它的类。
阅读全文
摘要:目录: 1、HotSpot虚拟机的内存布局2、线程3、程序计数器(PC寄存器)4、虚拟机栈4.1、虚拟机栈出现的背景4.2、内存中的栈与堆4.3、虚拟机栈基本内容4.4、栈中可能出现的异常4.5、设置栈内存大小4.6、栈的存储结构和运行原理4.7、栈幁的内部结构 4.7.1、局部变量表Local V
阅读全文
摘要:JVM内容包括:1)内存与垃圾回收;2)字节码与类加载器;3)性能监控与调优; 目录: 1、字节码与多语言混合编程2、java和jvm发展3、虚拟机和java虚拟机介绍4、JVM的位置5、JVM的整体结构6、java代码的执行流程7、栈的指令集架构和寄存器的指令集架构8、JVM的生命周期9、SUN
阅读全文
摘要:目录: 1、volatile 关键字与内存可见性2、原子变量与 CAS 算法3、同步容器类4、闭锁 CountDownLatch5、使用 Callable 创建线程6、Lock 同步锁7、生产者消费者案例--虚假等待8、线程按序交替执行9、读写锁 ReadWriteLock10、线程八锁11、线程池
阅读全文
摘要:目录: 1、网络模型7层概述2、网络编程三要素3、TCP 和 UDP4、UDP 编程5、TCP 编程6、使用 telnet 客户端发送数据7、BIO 模型 循环读取客户端发送的数据 1、网络模型7层概述 <--返回目录 物理层:主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传
阅读全文
摘要:目录: 1、Java NIO 简介2、NIO主要组件介绍 2.1、Buffer 2.2、Channel 2.3、Selector3、缓冲区(Buffer)的数据存取 3.1、缓冲区中的四个核心属性 3.2、flip() 方法和 clear() 方法 3.3、Buffer常用方法 3.4、直接缓冲区与
阅读全文