单例的写法

Java类加载机制,你理解了吗?

线程池--拒绝策略RejectedExecutionHandler

线程池的常见构造参数

hashmap的底层实现

JVM内存布局

原子类

四种引用

LRU 实现

junit用法,before,beforeClass,after,afterClass的执行顺序

用hashmap实现redis有什么问题

线程的状态

ReentrantLock 实现原理

线程的阻塞的方式

sleep和wait的区别

Java内存模型

垃圾回收机制,不可达算法

Spring IOC AOP

是否用过maven install、 maven test

Tomcat的各种配置,如何配置docBase

Tomcat介绍

Spring的bean配置的几种方式

一致性哈希

jdk1.8之前并发操作hashmap时为什么会有死循环的问题?

Spring中七种事务传播行为单例的写法

public class SingletonTest {

private static volatile SingletonTest singleton;

public static SingletonTest getInstance() {

if (singleton == null) {

synchronized (SingletonTest.class) {

if (singleton == null) {

singleton = new SingletonTest();

}

}

}

return singleton;

}

public static void main(String[] args) {

SingletonTest instance = SingletonTest.getInstance();

System.out.println(instance);

}

}Java类加载机制,你理解了吗?Java类加载机制,你理解了吗?​baijiahao.baidu.com线程池--拒绝策略RejectedExecutionHandler线程池--拒绝策略RejectedExecutionHandler​www.jianshu.com线程池的构造参数

publicThreadPoolExecutor(intcorePoolSize, 最小线程数

intmaximumPoolSize, 最大线程数

longkeepAliveTime, keeplive时间和单位

TimeUnit unit,

BlockingQueue workQueue, 阻塞队列

ThreadFactory threadFactory, 线程创建工厂

RejectedExecutionHandler handler) { 拒绝执行处理器

HashMap的结构是 数组+链表

为什么是数组+链表

数组查找快

链表插入快勤劳的小手:HashMap 五大核心知识点​zhuanlan.zhihu.com

JDK1.8后,改成 数组+链表+红黑树了,如果链表长度大于8,就会转为红黑树,提高查询效率。

HashMap原理,内部是一个Node节点的数组,默认长度16。每个对象都有hashCode方法,经过hash函数算得hash值,然后对数组长取模就可算出在数组中的index位置。用equal方法比较是否存在,如果出现哈希碰撞,就用一个链表结构链在一起。当链表长度超过8个,转为红黑树。JVM内存布局勤劳的小手:JVM内存布局​zhuanlan.zhihu.com原子类死磕 java原子类之终结篇(面试题)​www.cnblogs.com死磕 java魔法类之Unsafe解析​mp.weixin.qq.com四种引用Java 如何有效地避免OOM:善于利用软引用和弱引用​www.cnblogs.comLRU 实现LRU Cache - Matrix海子 - 博客园​www.cnblogs.comjunit用法,before,beforeClass,after,afterClass的执行顺序kunpengku:junit​zhuanlan.zhihu.com用hashmap实现redis有什么问题kunpengku:用hashmap实现redis有什么问题​zhuanlan.zhihu.com线程的状态kunpengku:Java线程的状态​zhuanlan.zhihu.com

ReentrantLock 实现原理ReentrantLock 实现原理​crossoverjie.top线程的阻塞的方式

sleep和wait的区别5. 线程的状态、线程的阻塞的方式​www.cnblogs.comhashmap的底层实现HashMap底层实现和原理(源码解析)_Java_裸睡的鱼-CSDN博客​blog.csdn.netJava内存模型

Java虚拟机规范中定义了Java内存模型(Java Memory Model,JMM),用于屏蔽掉各种硬件和操作系统的内存访问差异,规定了一个线程如何和何时可以看到由其他线程修改过后的共享变量的值,以及在必须时如何同步的访问共享变量。EnjoyMoving:Java内存模型(JMM)总结​zhuanlan.zhihu.com别再问什么是Java内存模型了,看这里! - 茶轴的青春 - 博客园​www.cnblogs.com

垃圾回收机制,不可达算法JVM垃圾回收机制​www.jianshu.comSpring IOC AOPkunpengku:Java AOP的底层实现原理​zhuanlan.zhihu.comhttps://www.cnblogs.com/chenssy/p/9576769.html​www.cnblogs.com是否用过maven install、 maven testMaven -- 生命周期_Java_Hern(宋兆恒)-CSDN博客​blog.csdn.netTomcat的各种配置,如何配置docBasetomcat如何配置context的docBase - 小甜瓜安东泥 - 博客园​www.cnblogs.com

Tomcat介绍Tomcat 详解 - 王代军 - 博客园​www.cnblogs.comTomcat多线程模型浅析_Java_站在人文与技术的交汇点-CSDN博客​blog.csdn.net

Spring的bean配置的几种方式kunpengku:Spring Bean的三种配置方式​zhuanlan.zhihu.com

一致性哈希一致性哈希​www.jianshu.com

jdk1.8之前并发操作hashmap时为什么会有死循环的问题?HashMap并发问题​www.jianshu.com

Spring中七种事务传播行为Spring事务传播行为详解 - 个人文章 - SegmentFault 思否​segmentfault.com

java内存 海子_Java问题相关推荐

  1. java内存 海子_Java并发编程:从根源上解析volatile关键字的实现

    Java并发编程:volatile关键字解析 1.解析概览 内存模型的相关概念 并发编程中的三个概念 Java内存模型 深入剖析volatile关键字 使用volatile关键字的场景 2.内存模型的 ...

  2. java内存 海子_Java虚拟机:JVM内存模型和volatile详解

    JVM内存模型和volatile详解 Java内存模型 随着计算机的CPU的飞速发展,CPU的运算能力已经远远超出了从主内存(运行内存)中读取的数据的能力,为了解决这个问题,CPU厂商设计出了CPU内 ...

  3. java内存 海子_Java垃圾回收机制 - 海 子

    Java垃圾回收机制 说到垃圾回收(Garbage Collection,GC),很多人就会自然而然地把它和Java联系起来.在Java中,程序员不需要去关心内存动态分配和垃圾回收的问题,这一切都交给 ...

  4. java内存 海子_[转]JVM的内存区域划分

    学过C语言的朋友都知道C编译器在划分内存区域的时候经常将管理的区域划分为数据段和代码段,数据段包括堆.栈以及静态数据区.那么在Java语言当中,内存又是如何划分的呢? 由于Java程序是交由JVM执行 ...

  5. java内存规范_Java内存模型-jsr133规范介绍

    最近在看<深入理解Java虚拟机:JVM高级特性与最佳实践>讲到了线程相关的细节知识,里面讲述了关于java内存模型,也就是jsr 133定义的规范. 系统的看了jsr 133规范的前面几 ...

  6. java 内存同步_Java中的硬件事务性内存,或者为什么同步将再次变得很棒

    java 内存同步 总览 硬件事务内存有可能允许多个线程同时以推测方式访问相同的数据结构,并使缓存一致性协议确定是否发生冲突. HTM旨在为您提供细粒度锁定的可伸缩性,粗粒度锁定的简单性以及几乎没有锁 ...

  7. java 内存指针_java内存模型详解

    借用一句话:Java与C++之间有一堵内存动态分配和垃圾收集技术围成的高墙,墙外面的人想进来,墙里面的人却想出去. 一.我们为什么要了解JAVA内存 因为虚拟机帮我们JAVA程序员管理着内存,我们在n ...

  8. java内存垃圾_Java内存区域与垃圾回收

    1,Java内存区域 1.1,运行时数据区域 java虚拟机在java的执行过程中将其管理的内存划分若干区域,有的随虚拟机进程的启动而一直存在,有的则依赖线程的启动和结束而建立和销毁. 1.1.1,程 ...

  9. java内存屏障_java内存屏障

    java内存屏障 java的内存屏障通常所谓的四种即LoadLoad,StoreStore,LoadStore,StoreLoad实际上也是上述两种的组合,完成一系列的屏障和数据同步功能. LoadL ...

最新文章

  1. Angular系列学习二:基本的组件说明、自定义组件和部分细节说明
  2. 基于OpenCL的深度学习工具:AMD MLP及其使用详解
  3. Html.RenderPartial与Html.RenderAction
  4. ProxyChains
  5. p怎么调用python的实例属性_Python中类的声明,使用,属性,实例属性,计算属性及继承,重写...
  6. 为什么会有jQuery、Dojo、Ext、Prototype、YUI、Zepto这么多JS包?
  7. [WPF]有Focus(), 那Unfocus()呢?
  8. python抓取教学_Python Selenium 实战教学:爬取每日天气
  9. 工具类与工具函数 —— NextPrime
  10. ASP.NET程序如何防止被注入(整站通用)
  11. 数据--第30课 - 树的定义
  12. 内核线程、轻量级进程、用户线程三种线程概念解惑(线程≠轻量级进程)
  13. winform窗体——布局方式
  14. 计算机英语二国家线,历年考研英语国家线一览表
  15. 机器视觉学习系列四:身份证识别
  16. linux7操作,Linux centos7 基本操作 七
  17. elementui表格自定义序号
  18. 接口管理工具Yapi禁用注册功能的配置解决方案
  19. Cannot negotiate authentication mechanism svn: Unable to connect to a repository at URL 'svn://.....
  20. 推荐系统︱基于bandit的主题冷启动在线学习策略

热门文章

  1. 03-0004 CART决策树解决银行贷款问题(Python)
  2. web页面调用支付宝支付
  3. 再分享本工作流的书《流程的永恒之道》
  4. 通过a标签下载文件,不打开新的窗口
  5. 常用的正则表达式,还不赶快收藏备用?!
  6. windows server 服务器 ftp搭建所遇到问题总结
  7. 深入分析Redis内存碎片
  8. 人,注定是要自由的 | 萨特
  9. PyQt5:简易视频播放器
  10. sim900a call