写点什么

jdk

1 人感兴趣 · 155 次引用

  • 最新
  • 推荐
https://static001.geekbang.org/infoq/07/079efddc31d0fae1c31a081bf72a11b7.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

聊聊 JDK1.0 到 JDK20 的那些事儿 | 京东云技术团队

最近小组在开展读书角活动,我们小组选的是《深入理解JVM虚拟机》,相信这本书对于各位程序猿们都不陌生,我也是之前在学校准备面试期间大致读过一遍,emm时隔多日,对里面的知识也就模糊了。这次开始的时候从前面的JDK发展史和JVM虚拟机家族着手,之前都是粗

深入浅出 java Semaphore

前言JDK的并发包中提供了几个非常有用的工具类,这些工具类给我们在业务开发过程中提供了一种并发流程控制的手段,本文会基于实际应用场景介绍如何使用Semaphore,以及内部实现机制。

https://static001.geekbang.org/infoq/15/155b7c053999a5437c651f3b9b58dc6f.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

JDK 中「SPI」原理分析

SPI是JDK内置的服务提供加载机制,可以为服务接口加载实现类,解耦是其核心思想,也是很多框架和组件的常用手段;

https://static001.geekbang.org/infoq/a2/a22529f69f5c78204efeb0fc771cc701.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

《面试 1v1》HashMap

用户头像
JavaPub
07-11

没有人比中国人更懂 HashMap

无处不在 | 亚马逊云科技的 Java 生态

Java 自诞生以来就一直是热门的编程语言。得益于丰富的生态以及完善维护的包和框架,Java 拥有着庞大的开发者社区。这个 1995 年诞生的计算机语言,以 “一次编写,到处运行” 的跨平台特性以及面向对象、泛型编程等现代语言的特性迅速成为了企业级应用乃至移

https://static001.geekbang.org/infoq/07/079efddc31d0fae1c31a081bf72a11b7.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

SLF4J 门面日志框架源码探索 | 京东云技术团队

我们通过代码入手,层层加码,直观感受SLF4J打印日志,并跟踪代码追本溯源。主要了解,SLF4J是如何作为门面和其他日志框架进行解耦。

Java 上进了,JDK21 要来了,并发编程再也不是噩梦了

之前写过 新项目为什么决定用 JDK 17了,还没过多久,JDK 21 马上就出来了,看来 Java 这几年真的是长进了。

线程的生命周期和常用方法

根据jdk官方文档,线程状态有以下几种

SpringBoot 实现启动项目后立即执行方法的几种方式

在项目开发中某些场景必须要用到启动项目后立即执行方式的功能,如我们需要去初始化数据到redis缓存,或者启动后读取相应的字典配置等,这篇文章主要聊聊实现立即执行的几种方法。

理解 JVM 工作机制(十一) 类加载器

用户头像
ue4
05-24

任意一个类,都由加载它的类加载器和这个类本身一同确立其在 Java 虚拟机中的唯一性,每一个类加载器,都有一个独立的类名称空间。

理解 JVM 工作机制(十) 类加载机制和加载的过程

用户头像
ue4
05-24

本文主要介绍类加载机制和加载的过程,类从被加载到虚拟机内存开始,到卸载出内存为止,它的整个生命周期包括7 个阶段

理解 JVM 工作机制(九) 类文件结构

用户头像
ue4
05-24

本文介绍了Java虚拟机中类文件结构

理解 JVM 工作机制(七) 内存分配和回收策略

用户头像
ue4
05-24

对象的内存分配,从概念上讲,应该都是在堆上分配(而实际上也有可能经过即时编译后被拆散为标量类型并间接地在栈上分配)。在经典分代的设计下,新生对象通常会分配在新生代中,少数情况下(例如对象大小超过一定阈值)也可能会直接分配在老年代。对象分配的

理解 JVM 工作机制(六) 垃圾收集器

用户头像
ue4
05-24

来明确一个观点:虽然我们会对各个收集器进行比较,但并非为了挑选一个最好的收集器出来,虽然垃圾收集器的技术在不断进步,但直到现在还没有最好的收集器出现,更加不存在“万能”的收集器,所以我们选择的只是对具体应用最合适的收集器。

理解 JVM 工作机制(五)垃圾回收算法

用户头像
ue4
05-24

不同垃圾回收器下的垃圾回收算法

理解 JVM 工作机制(四) 回收策略

用户头像
ue4
05-24

程序计数器、虚拟机栈、本地方法栈随线程而生,也随线程而灭;栈帧随着方法的开始而入栈,随着方法的结束而出栈。这几个区域的内存分配和回收都具有确定性,在这几个区域内不需要过多考虑回收的问题,因为方法结束或者线程结束时,内存自然就跟随着回收了。

太爆了!阿里最新出品 2023 版 JDK 源码学习指南,Github 三天已万赞

最近后台收到很多粉丝私信,说的是程序员究竟要不要去读源码?当下行情,面试什么样的薪资/岗位才会被问到源码?

横空出世!复盘 B 站面试坑我最深的 Java 并发:JDK 源码剖析

对于人脑的认知来说,“代码一行行串行”当然最容易理解。但在多线程下,多个线程的代码交叉并行,要访问互斥资源,要互相通信。作为开发者,需要仔细设计线程之间的互斥与同步,稍不留心,就会写出非线程安全的代码。正因此,多线程编程一直是一个被广泛而深

GitHub 爆赞!阿里 P9 架构师的 JDK 源码笔记也太强了!

众所周知,阅读源码是一件很累的事情,但是同时也是一件能让我们收获很多东西的事情。比如,有些原理搞不懂,但是通过阅读源码就可以让我们恍然大悟。

又搞事!阿里 400 页 JDK 并发源码指南,再次被 GitHub 置顶了!

不知道大家闲下来的时候有没有去阅读过JDK源码,虽然看源码有点找虐的感觉,但作为一名程序员,在闲暇时看一下jdk源码,有利于对自己日常的开发环境了解得更加深刻。而且还有以下五点好处。

https://static001.geekbang.org/infoq/05/0514e16b9e064212e58a5d1f58115ffb.webp?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

阿里内部最新发布的并发图册 +JDK 源码速成笔记,终于解脱束缚了

我不知道你有没有发现,很多Java 的高级知识点,其实在我们平时的工作中,用到的场景并不是很多。这样下来就造成了一个知识漏洞的现象,自己平时在工作中表现和成绩都是不错的,但是在没有进行复习、准备的情况下出去“裸面” ,则可能导致一个问题发生,那就

JDK20 正式发布了 GA 版本,短期维护支持,以及 JDK21 预览

最近,Oracle发布了JDK20,相比对于Java开发者来说,JDK的发版是比较收关注的事情了,小简也来和大家一起了解了解JDK20发生了什么变化呢?

阿里巴巴灵魂一问:说说触发 HashMap 死循环根因

JDK1.7 HashMap在并发执行put操作时会引起死循环,导致CPU利用率接近100%,这个是八股文内容之一,想必各位小伙伴也知道;在问到此问题的时候,可能有些面试官也会让我们讲讲这个死循环发生的过程,之前在面试某杭州电商的时候,也被问到过;如果回答不好,可

项目经理问我 Tomcat 与 Undertow 怎么抉择?此文教她选

《SpringBoot之配置Undertow容器》一文中写道:“Undertow的性能和内存使用方面都要优于 Tomcat容器”, 这一期,我就要给大家来求证一波,口说无凭,那我就拿当前的Web项目来做为测试项目,监控工具就地取材,通过使用 JDK 自带的jvisualvm

全局视角看技术 -Java 多线程演进史

网上关于多线程的概念令人烟花缭乱,相关讲解也不胜枚举,但总感觉缺少一个全局性的视角。为此笔者系统性的梳理了Java关于多线程的演进史,希望对你掌握多线程知识有帮助。

请你喝一杯 Corretto?谈一谈 JDK 的新选择

如果以20年的时间为限,让我们选出一个影响力最大的程序语言,我的答案应该只有一个 – 那就是 Java。这个1995年诞生的全新的计算机语言,以“一次编写,到处运行”的跨平台特性以及面向对象、泛型编程等现代语言的特性迅速成为了企业级应用乃至移动应用开发

https://static001.geekbang.org/infoq/69/69bca2cc1fe929d05dbf097b5328c91f.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

Java 集合中的排序算法浅析

排序是一个Java开发者,在日常开发过程中随处可见的开发内容,Java中有丰富的API可以调用使用。本文主要探讨java中排序方法所使用的算法,以及那些是值得我们学习和借鉴的内容。文中如有理解和介绍的错误,一起学习,一起探讨,一起进步。

https://static001.geekbang.org/infoq/0a/0aa1cfad979a5fa0166c96e4a5ded20b.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

Java CompletableFuture 异步超时实现探索

JDK 8 是一次重大的版本升级,新增了非常多的特性,其中之一便是 CompletableFuture。自此从 JDK 层面真正意义上的支持了基于事件的异步编程范式,弥补了 Future 的缺陷。在我们的日常优化中,最常用手段便是多线程并行执行。

jdk_jdk技术文章_InfoQ写作社区