- JDK 有多个构建版本,而实际只有一组源代码,即 OpenJDK,Sun Microsystems公司在2006年的JavaOne大会上称将对Java开放源代码,于2009年4月15日正式发布OpenJDK。任何人都可以获取这些源码,并用其构建一个变种版本进行发布。本文介绍下JDK相关内容。 JDK 有多个构建版本,而实际只有一组源代码,即 OpenJDK,Sun Microsystems公司在2006年的JavaOne大会上称将对Java开放源代码,于2009年4月15日正式发布OpenJDK。任何人都可以获取这些源码,并用其构建一个变种版本进行发布。本文介绍下JDK相关内容。
- 在编程面试中,字符串排列问题是一类常见但又具有挑战性的题目。本文将通过一道经典的字符串排列题目,带领你一步步深入分析并最终解决这一问题。 在编程面试中,字符串排列问题是一类常见但又具有挑战性的题目。本文将通过一道经典的字符串排列题目,带领你一步步深入分析并最终解决这一问题。
- 本篇开始将分析在使用任务执行框架时需要注意的各种情况,并介绍对线程池进行配置与调优的一些方法。 本篇开始将分析在使用任务执行框架时需要注意的各种情况,并介绍对线程池进行配置与调优的一些方法。
- 二叉树是数据结构中的一个重要概念,它在各种算法和应用中广泛使用。然而,当我们需要将二叉树保存到磁盘或在网络中传输时,需要将其转化为一种可存储和传输的格式——这就是序列化的作用。反之,反序列化则是将这种格式还原为原始的二叉树结构。在本文中,我们将介绍如何通过 Java 代码实现二叉树的序列化和反序列化 二叉树是数据结构中的一个重要概念,它在各种算法和应用中广泛使用。然而,当我们需要将二叉树保存到磁盘或在网络中传输时,需要将其转化为一种可存储和传输的格式——这就是序列化的作用。反之,反序列化则是将这种格式还原为原始的二叉树结构。在本文中,我们将介绍如何通过 Java 代码实现二叉树的序列化和反序列化
- 1.如何判断对象是否存活的?主要通过以下两种方法:引用计数算法:无法解决相互引用问题可达性分析算法可达性分析算法的基本思路就是通过一系列称为“GC Roots”的根对象作为起始节点,从这些节点开始,根据引用关系向下搜索,搜索过程所走过的路径称为“引用链”(Reference Chain),如果某个对象到 GC Roots 间没有任何引用链相连,或者用图论的话来说就是从 GC Roots 到... 1.如何判断对象是否存活的?主要通过以下两种方法:引用计数算法:无法解决相互引用问题可达性分析算法可达性分析算法的基本思路就是通过一系列称为“GC Roots”的根对象作为起始节点,从这些节点开始,根据引用关系向下搜索,搜索过程所走过的路径称为“引用链”(Reference Chain),如果某个对象到 GC Roots 间没有任何引用链相连,或者用图论的话来说就是从 GC Roots 到...
- 1.异常机制的过程Java 的异常处理机制允许程序在运行时检测和处理错误或异常情况,以提高程序的可靠性和健壮性。以下是 Java 异常处理机制的基本过程:抛出异常(Throwing Exceptions):当在程序执行过程中发生错误或异常情况时,可以使用throw语句手动抛出一个异常对象。异常对象通常是 Exception 类的子类的实例,它包含有关错误情况的详细信息。捕获异常(Catch... 1.异常机制的过程Java 的异常处理机制允许程序在运行时检测和处理错误或异常情况,以提高程序的可靠性和健壮性。以下是 Java 异常处理机制的基本过程:抛出异常(Throwing Exceptions):当在程序执行过程中发生错误或异常情况时,可以使用throw语句手动抛出一个异常对象。异常对象通常是 Exception 类的子类的实例,它包含有关错误情况的详细信息。捕获异常(Catch...
- 在数据结构的学习过程中,二叉搜索树(Binary Search Tree, BST)是一个常见的主题。它不仅具有排序的特性,还为各类算法的实现提供了基础。然而,在某些特定的应用场景中,我们可能需要将二叉搜索树转换为其他形式的数据结构,如双向链表。本文将详细探讨如何将一棵二叉搜索树转换为排序的双向链表,并通过代码实现这一过程。 在数据结构的学习过程中,二叉搜索树(Binary Search Tree, BST)是一个常见的主题。它不仅具有排序的特性,还为各类算法的实现提供了基础。然而,在某些特定的应用场景中,我们可能需要将二叉搜索树转换为其他形式的数据结构,如双向链表。本文将详细探讨如何将一棵二叉搜索树转换为排序的双向链表,并通过代码实现这一过程。
- 在许多实际应用中,我们会遇到复杂链表的复制问题。复杂链表不同于一般的单链表,不仅每个节点有指向下一个节点的指针,还有一个特殊的指针 `random`,可以指向链表中的任意节点或 `null`。如何高效地复制这样一个复杂链表是一个常见的面试题。本文将详细解析这一问题,并提供一个Java实现。 在许多实际应用中,我们会遇到复杂链表的复制问题。复杂链表不同于一般的单链表,不仅每个节点有指向下一个节点的指针,还有一个特殊的指针 `random`,可以指向链表中的任意节点或 `null`。如何高效地复制这样一个复杂链表是一个常见的面试题。本文将详细解析这一问题,并提供一个Java实现。
- 1.jvm 类加载的整体流程?通过一个类的全限定名来获取此类的二进制字节流(加载阶段)Class 文件的格式验证(连接–>验证–>文件格式验证)将这个字节流所代表的的静态存储(class 文件本身)结构转化为方法区的运行时数据结构(加载阶段)在内存(堆内存)中生成这个类的 java.lang.Class 对象,作为方法区这个类的各种数据的访问入口(加载阶段)元数据验证(连接–>验证–>元数... 1.jvm 类加载的整体流程?通过一个类的全限定名来获取此类的二进制字节流(加载阶段)Class 文件的格式验证(连接–>验证–>文件格式验证)将这个字节流所代表的的静态存储(class 文件本身)结构转化为方法区的运行时数据结构(加载阶段)在内存(堆内存)中生成这个类的 java.lang.Class 对象,作为方法区这个类的各种数据的访问入口(加载阶段)元数据验证(连接–>验证–>元数...
- 1.JVM 主要包括哪四部分?类加载器(ClassLoader):在 JVM 启动时或者在类运行时将需要的 class 加载到 JVM 中。执行引擎:负责执行 class 文件中包含的字节码指令内存区(也叫运行时数据区):是在 JVM 运行的时候操作所分配的内存区.本地方法接口:主要是调用 C 或 C++实现的本地方法及返回结果。 2.说说运行时数据区?方法区(Method Area)堆区... 1.JVM 主要包括哪四部分?类加载器(ClassLoader):在 JVM 启动时或者在类运行时将需要的 class 加载到 JVM 中。执行引擎:负责执行 class 文件中包含的字节码指令内存区(也叫运行时数据区):是在 JVM 运行的时候操作所分配的内存区.本地方法接口:主要是调用 C 或 C++实现的本地方法及返回结果。 2.说说运行时数据区?方法区(Method Area)堆区...
- 本文介绍log4j漏洞。 本文介绍log4j漏洞。
- 1.并发与并行?并发:同一时间同时发生,内部可能存在串行或者并行.又称共行性,是指处理多个同时性活动的能力。并行:同一时间点同时执行,不存在阻塞.指同时发生两个并发事件,具有并发的含义。并发不一定并行,也可以说并发事件之间不一定要同一时刻发生。区别:并发和并行是即相似又有区别的两个概念,并行是指两个或者多个事件在同一时刻发生;而并发是指两个或多个事件在同一时间间隔内发生。在多道程序环境下,... 1.并发与并行?并发:同一时间同时发生,内部可能存在串行或者并行.又称共行性,是指处理多个同时性活动的能力。并行:同一时间点同时执行,不存在阻塞.指同时发生两个并发事件,具有并发的含义。并发不一定并行,也可以说并发事件之间不一定要同一时刻发生。区别:并发和并行是即相似又有区别的两个概念,并行是指两个或者多个事件在同一时刻发生;而并发是指两个或多个事件在同一时间间隔内发生。在多道程序环境下,...
- Java和JavaScript区别与联系Java和JavaScript是两种很常见的编程语言,虽然它们名字很相似,但实际上却有着不同的特点和用途。本篇文章将详细介绍Java和JavaScript的区别与联系。JavaJava是一种面向对象的编程语言,最初由Sun Microsystems开发,后被Oracle收购。Java语言广泛用于后端开发、大型企业应用程序和Android应用开发。Jav... Java和JavaScript区别与联系Java和JavaScript是两种很常见的编程语言,虽然它们名字很相似,但实际上却有着不同的特点和用途。本篇文章将详细介绍Java和JavaScript的区别与联系。JavaJava是一种面向对象的编程语言,最初由Sun Microsystems开发,后被Oracle收购。Java语言广泛用于后端开发、大型企业应用程序和Android应用开发。Jav...
- 1.谈谈你对 class 文件的了解类型名称数量u4magic1u2minor_version1u2major_version1u2constant_pool_count1cp_infoconstant_poolconstant_pool_count - 1u2access_flags1u2this_class1u2super_class1u2interfaces_count1u2inte... 1.谈谈你对 class 文件的了解类型名称数量u4magic1u2minor_version1u2major_version1u2constant_pool_count1cp_infoconstant_poolconstant_pool_count - 1u2access_flags1u2this_class1u2super_class1u2interfaces_count1u2inte...
- 在类 Unix 系统中,nohup 是一个非常有用的命令,它允许用户在关闭终端会话后继续运行后台进程。对于 Java 应用程序,结合使用 nohup 和 PID 文件可以确保应用程序在后台持续运行,并且在需要时能够轻松地进行管理和监控。本文将详细介绍如何使用 nohup 启动 Java 应用程序并将其进程 ID (PID) 写入文件。 一、什么是 nohup?nohup(no hang up... 在类 Unix 系统中,nohup 是一个非常有用的命令,它允许用户在关闭终端会话后继续运行后台进程。对于 Java 应用程序,结合使用 nohup 和 PID 文件可以确保应用程序在后台持续运行,并且在需要时能够轻松地进行管理和监控。本文将详细介绍如何使用 nohup 启动 Java 应用程序并将其进程 ID (PID) 写入文件。 一、什么是 nohup?nohup(no hang up...
上滑加载中
推荐直播
-
Skill 构建 × 智能创作:基于华为云码道的 AI 内容生产提效方案2026/03/25 周三 19:00-20:00
余伟,华为云软件研发工程师/万邵业(万少),华为云HCDE开发者专家
本次直播带来两大实战:华为云码道 Skill-Creator 手把手搭建专属知识库 Skill;如何用码道提效 OpenClaw 小说文本,打造从大纲到成稿的 AI 原创小说全链路。技术干货 + OPC创作思路,一次讲透!
回顾中 -
码道新技能,AI 新生产力——从自动视频生成到开源项目解析2026/04/08 周三 19:00-21:00
童得力-华为云开发者生态运营总监/何文强-无人机企业AI提效负责人
本次华为云码道 Skill 实战活动,聚焦两大 AI 开发场景:通过实战教学,带你打造 AI 编程自动生成视频 Skill,并实现对 GitHub 热门开源项目的智能知识抽取,手把手掌握 Skill 开发全流程,用 AI 提升研发效率与内容生产力。
回顾中 -
“虾”路相逢 脑洞无穷-龙虾Show& Talk2026/04/16 周四 15:00-18:00
叶文彬-华为云运营顾问、陈晶杰-华为云开发者专家、李成-华为云AI架构师、张剑-HCDE开发者专家
以OpenClaw为代表的AI智能体引发全民狂热,这场狂欢背后,是AI从"对话工具"向"数字员工"的范式跃迁,是用户渴望能自主执行任务、真正"干活"的AI代理。华为云已正式开启Openclaw体验计划,支持用户将龙虾部署在华为云上,与本地隐私数据进行隔离,如何让每一位用户优雅的“养虾”?欢迎收看本次直播
即将直播
热门标签