
java
木&东
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
logback源码学习一:配置加载过程
文章目录一:获取一个日志记录器Logger 一:获取一个日志记录器Logger 从 Logger logger = LoggerFactory.getLogger(Test.class);开始,LoggerFactory是slf4j的类 public static Logger getLogger(Class<?> clazz) { Logger logger = ge...原创 2019-08-19 21:08:51 · 2576 阅读 · 0 评论 -
java基础之容器系列学习:(一):集合框架简单概述
文章目录一:集合框架简介 一:集合框架简介 Java中用来存储多个数据的类型有:数组+集合.集合相对于数组来说有以下优势 大小可变 存储的类型可变 (只能存引用类型,基本类型通过包装类存储) 存储方式多样(内部可用数组结构,可用链表) 在集合体系中主要有两类:Collection(List+Set)和map Collecyion接口作为List接口和Set接口的顶层接口,提供操作集合元素的...原创 2019-08-23 21:29:32 · 160 阅读 · 0 评论 -
HashMap原理解析
HashMap在jdk1.8之前和Jdk1.8之后内部实现有所不同:在jdk1.8之前,hashMap底层是数组和链表的结构,从jdk1.8开始内部实现使用了数组和链表以及红黑树 一:jdk1.8之前的HashMap实现原理(以jdk1.7为例) 先看构造方法: public HashMap() { this(DEFAULT_INITIAL_CAPACITY, DEFAULT_...原创 2019-03-26 20:41:28 · 127 阅读 · 0 评论 -
HashMap在并发读写过程中形成环状链表(并发问题)
今天研读Java并发容器和框架时,看到为什么要使用ConcurrentHashMap时,其中有一个原因是:线程不安全的HashMap, HashMap在并发执行put操作时会引起死循环,是因为多线程会导致HashMap的Entry链表形成环形数据结构,查找时会陷入死循环。纠起原因看了其他的博客,都比较抽象,所以这里以图形的方式展示一下,希望支持! (1)当往HashMap中添加元素时,会引起Ha...转载 2019-01-23 22:17:55 · 2287 阅读 · 0 评论 -
Java注解学习总结
文章目录一:注解基础学习元注解注解的定义和属性二:编译时解析注解三:运行时解析注解四:常见的操作源代码字节码的库五:参考博客 一:注解基础学习 注解从含义上讲是一种元数据,本质上只是对代码的一种注释说明,因为有了注解的解析才有了相应的功能。如果没有注解解析产生功能,它还不如注释清晰。从结构上看,注解编译后就是一个接口 元注解 元注解:元注解是一种基本注解,在定义注解时使用,主要定义注解的作用域,生...原创 2019-12-11 01:33:56 · 481 阅读 · 0 评论 -
Java的SPI机制入门
文章目录一:SPI简单介绍二:SPI举例三:JDBC中如何使用SPI 一:SPI简单介绍 最近在网上看到了java中SPI这个技术,据了解在JDBC,JNDI,日志门面,Dubbo等很多技术中都有使用,因此决定学习一下. SPI(service provider interface:服务提供者接口),为接口寻找服务实现类,编程时针对接口编程,由具体...原创 2019-05-08 23:46:45 · 561 阅读 · 0 评论 -
java并发编程系列(一):多线程简介
一:多线程的发展 转载: 多线程的效率和性能问题 二:目前并发编程遇到的问题 线程上下文切换 目前的cpu主要通过划分时间片来执行线程任务,在线程之间来回切换就需要记录线程的状态(在线程上下文中).上下文切换会影响执行效率,那么尽可能减少上下文切换可以提高效率,方法如下: 无锁并发编程,CAS算法,建立合适数量的线程 死锁(一般是代码问题) 资源限制 软件资源 socket连接数等 ...原创 2019-03-27 23:05:16 · 135 阅读 · 0 评论 -
字符串常量池简介
为什么Java中的String类是不可变的? String类是Java中的一个不可变类(immutable class)。 简单来说,不可变类就是实例在被创建之后不可修改。 在《Effective Java》 Item 15 中提到了为了使类成为不可变,需要遵循的五条规则: 不要提供任何会修改对象状态的方法。 保证类不会被扩展。 使所有的域都是fi...转载 2019-02-13 21:54:51 · 194 阅读 · 0 评论 -
eclipse中几处的jdk设置以及各自的作用
一:jdk和jre的区别 JDK(java development kit):java开发工具,包含java基础类库,java工具(常用指令,java,javac等),运行时环境(jre),面向于开发人员 JRE(Java Runtime Environment):包含jvm(虚拟机)的实现,java核心类库(rt.jar),面向Java应用程序. 本地安装jdk之后,能看到jdk内部包含jre以...原创 2019-01-22 22:46:03 · 577 阅读 · 0 评论 -
jdk的jmap指令使用介绍
jdk的jmap指令使用介绍 1.基本介绍 jmap 主要用于打印指定Java进程(或核心文件、远程调试服务器)的共享对象内存映射或堆内存细节.jmap命令可以获得运行中的jvm的堆的快照,从而可以离线分析堆,以检查内存泄漏,检查一些严重影响性能的大对象的创建,检查系统中什么对象最多,各种对象所占内存的大小 可以将VM 中的heap(堆)以二进制格式输出到文本中. 2.命令格式和参数说明 命...转载 2018-10-27 21:02:59 · 1429 阅读 · 0 评论