
Java基础内容
文章平均质量分 85
基础
西魏陶渊明
稻盛和夫说:你不会的东西,觉得难的东西,一定不要躲,先搞明白,后精湛,你就比别人优秀了。因为大部分人都不舍得花力气去钻研,自动被淘汰,所以你执着的努力,就占了大便宜。
展开
-
每年大促都要补习JVM调优,今年我都总结到这里了。
每年大促都要疯狂补习JVM相关知识, 今年我都总结到这里了。帮助我们快速定位问题。[Full GC (Allocation Failure) GC 原因(Allocation Failure) 分配失败1. Allocation Failure 分配失败2. Metadata GC Threshold 元空间不足3. Last ditch collection 元空间GC后,仍然不足,即触发原创 2022-08-24 16:12:23 · 1524 阅读 · 23 评论 -
书读百遍其义自见 - 六大原则 & 23种设计模式
虽然设计模式是个好东西,能够给我们带来各种好处,比如降低对象之间的耦合,增加程序的可复用性、可扩展性、可维护性等等。但是我们也不应该滥用设计模式,设计模式在一定程序上会增加系统的复杂性。我们在写码时应该评估好各方面,避免过度设计。...原创 2022-08-11 20:46:21 · 360 阅读 · 0 评论 -
JVM参数配置说明
JVM参数配置说明。原创 2022-07-21 20:40:36 · 407 阅读 · 1 评论 -
Java泛型体系知识学习
Type 是 Java 语言中所有类型的公共父接口,其从 JDK5 开始引入,引入的目的主要是为了支持泛型。Java的泛型体系还是比较复杂的, 不过没关系,本篇文章会从实战的角度来,学习泛型。原创 2022-07-19 11:28:30 · 550 阅读 · 0 评论 -
面试,再也不怕被HashMap欺负了
HashMap是我们在日常开发中经常使用的一个结合类型,同时也是面试时候最好提问的集合类型,在这里进行整理一起学习,进步。原创 2022-07-19 11:21:34 · 378 阅读 · 0 评论 -
常见分布式锁介绍
在单机环境下多线程操作共享数据时候回用到锁的概念,因为是单机可以直接使用jdk提供的锁机制就可以满足。但是在微服务场景下,因为是多服务共享数据,此时jdk提供的锁就不能再使用了。于是乎就有了分布式锁。本文介绍常见的几种可以使用的生产的分布式锁。...原创 2022-07-17 12:39:19 · 599 阅读 · 0 评论 -
synchronized锁升级
顾名思义,它会偏向于第一个访问锁的线程,如果在运行过程中,同步锁只有一个线程访问,不存在多线程争用的情况,则线程是不需要触发同步的,这种情况下,就会给线程加一个偏向锁。说白了,没有竞争,还叫啥锁呀。就是加了一个标记。认为没有人给你竞争。...原创 2022-07-17 12:37:21 · 410 阅读 · 0 评论 -
Java四大引用
在内存充足情况下,GC不会回收软引用对象,如果内存空间不足了,才会回收这些对象的内存。也正因为这个特性,所以软引用经常用作缓存对象使用。翻译 2022-07-17 12:36:14 · 361 阅读 · 0 评论 -
委派双亲之类加载器
莫笑少年江湖梦,谁不少年梦江湖。翻译 2022-07-17 12:34:50 · 391 阅读 · 0 评论 -
JVM钩子hooks函数
简直太简单了,没有任何学习成本。一行代码就能搞定。@OverrideSystem.out.println("钩子函数执行");}}));//当主动关闭应用}}原创 2022-07-17 12:33:15 · 682 阅读 · 0 评论 -
SPI服务发现机制
SPI,全称为ServiceProviderInterface,是一种服务发现机制。JDK中的SPI是通过在ClassPath路径下的META-INF/services文件夹查找扩展文件,自动加载文件里所定义的类。在小编的理解来,觉得它更是一种思想。即找到服务的接口,美其名曰服务发现机制思想。很多开源框架都有借用这种思想,比如dubbo、jdbc。@Override");}}...原创 2022-07-17 12:31:44 · 1385 阅读 · 3 评论 -
Java管理扩展
注意接口名必须是MBean结尾,实现类必须去掉MBean如CustomMBean接口对应的实现类必须是Custom。通过前面的演示,大概我们对JMX在实际中的用处有一个大概的了解了吧。根据这个特性,我们就可以根据我们的需求来定制属于自己的能力...原创 2022-07-17 12:29:34 · 581 阅读 · 0 评论 -
Lambda函数式编程
Java8所有的新特性基本基于函数式编程的思想,函数式编程给Java带来了注入了新鲜的活力。函数式编程其实并不是很难,小编在学习函数式编程时候刚开始一头雾水,最后仔细观察就发现了其中的小窍门,读了本篇文章如果还没有掌握,就算我输了。......原创 2022-07-17 12:28:27 · 755 阅读 · 0 评论 -
程序员快速弄清Java异常体系,拒绝痛苦编程,开发效率加倍
知己知彼方能百战不殆,在小编初学Java时候特别怕程序报异常,经常会因为异常不知所措,相信这个问题应该是所有初学者都会有的心理感受;如果你也有这种感受,那么只有一种解决方法:迎难而上,攻克Java异常体系,长痛不如短痛,只要清楚了Java的异常体系,就不会再有这种感受了。下面跟着小编来窥探Java的异常体系吧。一、Java异常体系其实很简单其实Java的异常体系是非常简单的,简单到只要你看过本文就能明白百分之八九十的样子。当你清楚了Java的异常体系那么在遇到项目执行异常的时候,基本看报错的异常.原创 2020-05-13 23:14:05 · 661 阅读 · 0 评论 -
Java多线程之隔离技术ThreadLocal源码详解
本篇文章是对ThreadLocal和InheritableThreadLocal,TransmittableThreadLocal的原理和源码进行深入分析,并举例讲解,其中前两个是JDK自带的。原理相对比较简单,其解决了单线程环境和在单线程中又创建线程(父子线程)中线程隔离的问题, TransmittableThreadLocal主要是解决,线程池中线程复用的场景。全文涉及到源码比较多阅读起来需要...原创 2018-07-17 09:37:15 · 3361 阅读 · 2 评论