![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 86
代数狂人
这个作者很懒,什么都没留下…
展开
-
Java可变参数列表
在使用模块化的Java应用中,你可能需要确保使用可变参数的方法对所需类型的模块是可访问的。这意味着,如果你在一个模块中定义了一个使用可变参数的方法,并且这个方法需要访问另一个模块中的类,那么你需要确保这两个模块之间有适当的依赖关系。在Java中,可变参数(Varargs)允许开发者在调用方法时传递任意数量的参数,这些参数在方法内部会被统一处理为数组形式。如果你有两个重载方法,一个接受基本类型的可变参数,另一个接受对应的包装类的可变参数,编译器可能无法确定应该调用哪个方法,尤其是在没有传递任何参数时。原创 2024-08-16 22:51:27 · 299 阅读 · 0 评论 -
Java垃圾收集器工作原理
关键字创建的对象和数组。然而,Java通过其高效的垃圾收集(Garbage Collection,GC)机制,实现了与栈分配相近的堆分配速度,从而确保了程序的性能。为了深入理解Java堆内存的高效分配机制,我们可以将其比喻为一条在虚拟内存中运作的传送带,而这条传送带是由固定大小的页(Page)所构成的。然而,在对象的不断创建和销毁过程中,内存可能会变得碎片化,形成许多未被使用的空洞。因此,垃圾收集器扮演着至关重要的角色,它负责回收那些不再被使用的对象所占用的内存页或页内的内存区域,以确保内存的可持续利用。原创 2024-08-16 08:15:00 · 553 阅读 · 2 评论 -
Java探索:@Override、@SuppressWarnings(“deprecation“)与System.gc()的实战解析与融合应用
如果我们确信自己的代码是安全的,并且出于某种原因需要使用这些不推荐使用的元素,可以使用。虽然垃圾收集主要由JVM自动管理,但在某些内存敏感的操作中,我们可能希望手动触发垃圾收集以回收不再使用的对象占用的内存。注解在Java编程中扮演着至关重要的角色,它犹如一位严谨的守护者,确保子类方法正确重写了父类中的方法。方法的实战应用,揭示它们如何协同工作,共同塑造健壮、可维护的代码基石。注解抑制了编译器关于使用不推荐使用方法的警告,并明确调用了父类的。类的方法,编译器将发出错误提示,从而帮助我们及时发现并修正问题。原创 2024-08-15 23:02:19 · 315 阅读 · 0 评论 -
Java兮@Override凌苍穹,SuppressWarnings(“deprecation“)兮夜照明,System.gc()兮优性能。
Java之中,垃圾收集主要由JVM自动管理,然于某些内存敏感之操作,开发者或欲手动触发之,以回收无用之对象,节省内存之空间。余观之而叹曰:Java之伟,非止于其语言之规、编程之法,更在于其注解与方法之玄妙无穷也!@Override注之,则编译器知其意,若重写有误,则警示之,使开发者得以即时更正,代码之严谨性得以保全。而后Java出,立语言之规,定编程之法,乃使万物有序,代码生辉。于其间,注解与方法,如星辰之于苍穹,各司其职,共筑辉煌。今余欲探其深奥,析其精妙,特作此章,以颂Java之伟,注解与方法之玄妙。原创 2024-08-15 22:46:54 · 168 阅读 · 0 评论 -
Java与C#中的数据存储:相似性与差异性探讨
Java提供了内建的支持机制来处理序列化与持久化任务,同时,诸如JDBC与Hibernate等高级框架的加入,更是极大地简化了将对象存储至数据库的过程,为开发者带来了极大的便利。需要明确的是,对象本身并不栖身于栈中,而是安居于堆中,栈中仅保留了指向堆中对象的引用标识。在Java和C#等高级编程语言中,栈(Stack)和堆(Heap)都是位于RAM中的,用于存储程序运行时的各种数据和对象。常量,即在程序执行期间恒定不变的值,它们在Java中要么被直接嵌入代码之中,要么被安置于特定的内存区域。原创 2024-08-13 17:00:40 · 324 阅读 · 6 评论 -
Java中的值传递与引用传递
值传递:当你将一个变量传递给一个方法时,你实际上传递的是该变量值的一个副本。这意味着,如果你在方法内部对这个副本进行修改,原始变量的值是不会改变的。引用传递:当你将一个变量传递给一个方法时,你实际上传递的是该变量的引用(或内存地址)。这意味着,如果你在方法内部通过这个引用修改了变量的值,那么原始变量的值也会发生改变。在Java中,无论是基本类型还是引用类型,都是通过值传递的。对于引用类型,传递的是指向对象的引用的一个副本。原创 2024-08-12 23:52:34 · 132 阅读 · 1 评论 -
Java编程 : 对象的本质
编程范式的演变:从最初的机器视角,即通过直接操作硬件指令的汇编语言,到逐渐发展出更加抽象和高级的编程语言,这一过程不仅简化了编程难度,还极大地提高了代码的复用性和可移植性。面向对象编程(OOP)的兴起,更是将编程带入了从问题视角出发的新时代,使得程序员能够更加专注于解决问题本身,而非与计算机硬件细节纠缠。接口与对象:在OOP中,接口定义了对象能够响应的请求,是对象与外界交互的桥梁。一个设计良好的接口不仅提高了代码的可用性,还增强了系统的模块化和可维护性。原创 2024-08-12 23:14:49 · 1829 阅读 · 3 评论 -
Jar工具完全指南:从入门到精通
Jar(Java Archive)是Java生态系统中的一个核心组件,它允许你将多个Java类文件、相关元数据和资源打包成一个单独的文件,以便于分发、部署和共享。Jar文件是基于Zip格式的,因此你可以使用任何支持Zip的工具来查看其内容,但Jar工具提供了更多针对Java特定需求的功能。现在,Jar文件几乎无处不在,从简单的Java程序到复杂的企业级应用,都可以看到它的身影。本教程将带你深入了解Jar工具的每一个方面,从最基本的创建和提取操作,到更高级的清单文件管理和应用程序打包技巧。原创 2024-08-05 19:10:59 · 1032 阅读 · 1 评论 -
Java编程 启程:Hello, World!的探索之旅
负责执行这一链接步骤的程序,自然而然地,被称作链接器,在Java中,编译过程是在程序执行之前完成的,它将源代码转换为字节码。编译器成为了我们的桥梁,将编写的源代码转化为字节码,随后链接器(在Java中,这一角色通常由Java虚拟机(JVM)在运行时担任)将这些字节码联结成一个可执行的应用程序。编译器检测到的错误被归类为编译时错误,而链接器(或更准确地说,是JVM的类加载器和链接器)在加载和链接类时发现的错误,则被称为链接时错误。但是,不要小看这个程序,它是你编程之路的起点,是你与计算机交流的第一次尝试。原创 2024-08-04 00:04:26 · 655 阅读 · 0 评论 -
【Java文件处理技巧:掌握Scanner和PrintWriter的使用方法】
上面的代码首先检查file.txt是否存在,如果不存在,则使用Files.createFile方法创建一个空文件。注意,PrintWriter在打开文件时会自动创建或覆盖现有文件,所以我们不需要提前检查file_copy.txt是否存在。这样,无论file.txt是否存在,程序都能够顺利进行,并将读取到的内容写入到file_copy.txt中。注意,为了避免读写冲突,程序将读取的内容写入到了一个新的文件。这个程序是一个基本的文件读写示例,展示了如何使用Java的。读取文件内容,并使用。原创 2024-07-25 23:13:25 · 807 阅读 · 0 评论 -
Java中的Console对象:增强程序与用户交互的利器(readPassword()、readLine(),printf() 和format() )
在Java编程语言中,方法扮演着尝试获取与当前运行的Java应用程序相关联的控制台(Console)对象的角色。这个控制台对象,如果成功获取,为程序提供了一个与用户进行交互的界面,无论是读取输入还是打印输出。然而,是否能够获取到这个控制台对象,很大程度上取决于Java虚拟机(JVM)的启动环境。原创 2024-07-25 20:36:06 · 567 阅读 · 0 评论 -
Java的函数式编程与并发执行:传统与现代的完美融合(Lambda表达式、函数式接口、Stream API以及Fork/Join框架和CompletableFuture)
Java,这门历史悠久的编程语言,自诞生以来,就以其卓越的跨平台能力、丰富的API库以及稳健的性能,在软件开发领域赢得了广泛的认可与应用。随着技术的不断进步,Java也在不断地自我革新,以适应新的编程趋势和需求。其中,函数式编程与并发执行的支持,便是Java近年来两大显著的进步,它们为Java注入了新的活力,使其在现代软件开发中依然保持着强大的竞争力。原创 2024-07-24 23:45:40 · 1663 阅读 · 6 评论 -
Java字符串与Unicode编码(码点、代码单元、基本多语言平面BMP、辅助平面、代理对)
Unicode是一个为世界上所有书写系统设计的字符编码标准。它旨在解决不同编码标准之间不兼容的问题,使得计算机能够处理和显示世界上几乎所有的字符。Unicode为每个字符分配了一个唯一的数字,称为“码点”(Code Point)。原创 2024-07-24 18:18:36 · 1159 阅读 · 1 评论