
后端开发语言
文章平均质量分 71
Go和Java语言学习
蘋天纬地
这个作者很懒,什么都没留下…
展开
-
Go如何进行垃圾回收
Go 语言的垃圾回收(Garbage Collection,GC)是由其内置的垃圾回收器负责的,它是一种并发标记-清除垃圾回收器,旨在减少开发者手动管理内存的负担,同时提供较高的性能和效率。Go 的垃圾回收器以简单高效著称,开发者无需手动管理内存,大大降低了程序中内存泄漏和悬空引用问题的风险。虽然 Go 的垃圾回收器需要在某些阶段暂停应用程序,但停顿时间通常很短(亚毫秒级),并随着 Go 版本的更新逐渐优化。Go 的垃圾回收器主要负责回收不再被程序使用的内存(即无法访问的对象),以避免内存泄漏。原创 2025-01-10 10:28:30 · 951 阅读 · 0 评论 -
Go语言和哪种语言比较类似
并发模型:Go语言的并发模型受到了Erlang的影响,使用轻量级的goroutines和channels进行并发编程,类似于Erlang的进程和消息传递。错误处理:Erlang的“let it crash”哲学影响了Go语言的错误处理机制,Go语言强调明确的错误处理,鼓励开发者在代码中处理可能的错误情况。设计初衷:Go语言的设计初衷之一是提供一种现代化的、简洁的编程语言,同时保留C语言的简洁性和高效性。标准库:Java和Go语言都有丰富的标准库,提供了大量的工具和功能,可以大大提高开发效率。原创 2025-01-09 15:34:24 · 354 阅读 · 0 评论 -
java启动命令里,-D和不带D的参数有什么区别
D参数用于设置系统属性,影响JVM内部行为或被应用程序代码读取。不带-D的参数则可能是JVM选项或者直接传递给应用程序的参数,具体取决于参数的内容和上下文。理解这两者的区别对于正确配置和启动Java应用程序至关重要。原创 2025-01-06 14:20:00 · 531 阅读 · 0 评论 -
HashMap和ConcurrentHashMap有什么区别
是 Java 中常用的哈希表实现,但它们的设计目标和应用场景不同。原创 2024-11-17 18:59:13 · 766 阅读 · 0 评论 -
hashmap的链表是头插入还是尾插入,为什么
结合红黑树优化,性能和稳定性都显著提升。在 JDK 1.8 及以后,而在 JDK 1.8。原创 2024-11-17 18:56:53 · 479 阅读 · 0 评论 -
jdk1.7和1.8的区别
Java 7:重点在于对已有特性的增强和改进,尤其是语言特性的优化(如switch支持字符串、多重异常捕获)和对并发、文件系统的增强支持。Java 8:引入了许多革命性的特性,如Lambda表达式、StreamAPI、Optional类,以及全新的日期时间 API,极大提升了开发者的编程体验,带来了更高的效率和更简洁的代码。Java 8 由于其强大的新功能和长期支持,成为了很多开发者和企业的首选版本。原创 2024-10-25 09:43:57 · 1163 阅读 · 0 评论 -
受检异常是什么怎么一回事儿
受检异常是Java中的一种重要机制,旨在强制开发人员处理潜在的错误情况,从而提高代码的健壮性。通过强制处理受检异常,可以避免在运行时出现未处理的异常,从而增强程序的稳定性。与输入输出操作相关的异常,如文件未找到、读写错误等。与数据库操作相关的异常,通常在执行SQL语句时抛出。当试图通过字符串名称加载类时,如果类未找到,则抛出此异常。试图访问不存在的文件时抛出。当解析某种格式(如日期或数字)时发生错误时抛出。当对象不支持克隆时抛出,通常用于实现Cloneable接口的类。原创 2024-10-08 16:23:12 · 615 阅读 · 0 评论 -
如何解决死锁问题,用代码来模拟一下
通过设定锁的获取顺序和确保所有线程遵循相同的锁获取策略,可以有效避免死锁的发生。在实际开发中,还可以结合其他技术(如超时机制、死锁检测等)来处理更复杂的并发场景。原创 2024-10-08 09:05:27 · 299 阅读 · 0 评论 -
死锁问题是怎么样的,该如何解决呢
死锁是多线程编程中常见且复杂的问题,开发者可以通过避免死锁、检测和恢复、超时机制以及使用高级并发工具等方式来解决。合理的设计和线程管理可以有效降低死锁的发生概率,提高系统的稳定性。原创 2024-09-27 20:11:52 · 446 阅读 · 0 评论 -
除了hotspot,还有哪些jvm的实现
不允许null键或null值,主要是为了简化 API 使用、避免复杂的并发处理逻辑、减少潜在的错误以及保持高性能。在并发环境中,空值的处理和判断可能会增加不必要的复杂性和错误风险,因此 Java 的设计者选择禁止null。原创 2024-09-27 08:57:22 · 684 阅读 · 0 评论 -
为什么 ConcurrentHashMap 中 key 不允许为null
不允许null键或null值,主要是为了简化 API 使用、避免复杂的并发处理逻辑、减少潜在的错误以及保持高性能。在并发环境中,空值的处理和判断可能会增加不必要的复杂性和错误风险,因此 Java 的设计者选择禁止null。原创 2024-09-26 21:39:50 · 958 阅读 · 0 评论