10个Java开发者必须改掉的过时编程习惯

“如果你一直拖着过去不放,就无法向前进步。”这正是我在代码审查时对团队说的话。然而,每次我打开一个拉取请求时,我仍然看到过时的Java特性、坏习惯和应该在几年前就被淘汰的编码习惯。所以,如果你今天在使用Java,无论你是初级、中级还是高级开发者,这篇文章都适合你 🫵…

hello hello 发布于 2025-07-01

Java 24 五大特性

前言 Java 24 是平台演进过程中一个大胆而深思熟虑的重要里程碑。经验丰富的 Java 开发者不仅会欣赏这次发布的变化数量,更会被其深度和发展方向所震撼。本次发布包含 24 个 JEP,显而易见,OpenJDK 社区正在性能、可扩展性和现代开发需求方面全力投入。在这篇文章中,我将为大家详细介绍我认为对资深工程师最具影响力的五个特性:分代…

hello hello 发布于 2025-06-24

Java Lambda 表达式的缺点和替代方案

Java 8 引入的 Lambda 表达式曾被誉为编写简洁、函数式代码的革命性工具。但说实话,它们并不是万能钥匙。它有不少问题,比如它没有宣传的那么易读,在某些场景下还带来性能开销。 作为一名多年与 Java 冗长语法搏斗的开发者,我找到了更注重清晰、可维护性和性能的替代方案。本文将剖析 Lambda…

hello hello 发布于 2025-06-03

什么是 ActiveJ ?

1. 简介 ActiveJ 是一个轻量级的 Java 框架,适用于高性能应用。我们可以用它来创建启动速度快、内存占用小的极简和模块化应用。它提供了异步 I/O、依赖注入、高效序列化和响应式编程支持等特性。 在本教程中,我们将讨论 ActiveJ 的主要特性,包括其 Inspect 模块、强大的事件循环和高级网络功能。 2. 注入 我们从 ActiveJ…

hello hello 发布于 2025-05-22

什么是 SoutUp?

1. 简介 在本文中,我们将介绍 SootUp 库。SootUp 是一个用于对 JVM 代码进行静态分析的库,可以分析原始源代码或已编译的 JVM 字节码。它是对 Soot 库的彻底重构,目标是更加模块化、可测试、可维护和易用。 2. 依赖 在使用 SootUp 之前,我们需要在构建中引入最新版本(截至撰写时为 1.3.0)。 <dependency>…

hello hello 发布于 2025-05-22

Git 如何撤回已 Push 的代码

在日常的开发中,我们经常使用Git来进行版本控制。有时候,我们可能会不小心将错误的代码 Push 到远程仓库,或者想要在本地回退到之前的某个版本重新开发。 或者像我一样,写了一些感觉以后很有用的优化方案push到线上,又接到了一个新的需求。但是呢,项目比较重要,没有经过测试的方案不能轻易上线,为了承接需求只能先把push上去的优化方案先下掉。…

hello hello 发布于 2025-04-25

Java反射和new效率对比,差距有多大?

一. 基础概念 Java中,一般我们创建一个对象可能会选择new一下个实例。但是随着我们技术的不断提升,我们也学习到了,可以通过反射技术实现对象的创建。 可是,你有没有想一下,什么时候我们改用new创建对象,什么时候我们改用反射创建对象呢? 两者创建对象的效率又是如何呢? //new 方式创建对象 ReflectDemo reflectDemo = new…

hello hello 发布于 2025-04-09

Java 24 发布:新特性速递

Java 24 已于 2025 年 3 月 18 日发布,但说实话——现在还有人关心吗?每六个月一次的版本更新让 Java 的迭代变得如此频繁,以至于新版本发布几乎不再让人兴奋。曾经,一个主要版本的 Java 发布是值得庆祝的事件,而如今… 但以下应该是你关注的原因: Java 25 将于 9 月发布,并成为 LTS(长期支持)版本 。这意味着所有在非…

hello hello 发布于 2025-03-24

Java多线程教程:Thread中的join方法

Java中的 join 方法用于暂停当前线程的执行,直到指定线程完成执行。当需要确保某个线程完成任务后再继续程序时,这个方法特别有用。 join 方法可以在线程实例上调用,有三种重载形式: join() 、 join(long millis) 和 join(long millis, int nanos) 。 更多关于Java多线程教程可点击系列专栏:…

hello hello 发布于 2025-03-21

如何在Java中设计一个线程安全的类

什么是线程安全的类?…

hello hello 发布于 2025-03-21
上一页 下一页