自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 Java数据结构中的常见排序算法

简单排序(冒泡、选择、插入):时间复杂度为$O(n^2)$,适合小型数据集或教育目的,但效率较低。高效排序(快速、归并):时间复杂度为$O(n \log n)$,适合大型数据集。快速排序在平均情况下更快,但最坏情况性能差;归并排序稳定且始终高效,但需要额外空间。在实际Java应用中,方法通常使用优化后的快速排序或归并排序(例如,针对对象数组使用归并排序)。选择算法时,需考虑数据规模、是否要求稳定排序(如插入排序和归并排序是稳定的),以及内存限制。

2026-03-29 20:46:52 195

原创 Java中的自定义异常处理

当调用者有责任且有能力处理这种异常,或者这种异常代表了一种可恢复的、预期内的错误状态时(如用户输入验证失败、文件未找到但可能重试)。当异常代表的是程序逻辑错误、不可恢复的错误、或者调用者通常无法或不应该处理这种错误时(如内部配置错误、空指针、非法参数状态)。对于运行时异常,捕获是可选的,但通常建议在合适的层级进行捕获和处理。编译器会强制要求调用可能抛出此异常的方法的代码,必须处理这个异常(使用。在代码中,当你检测到符合自定义异常所代表的错误条件时,使用。在调用可能抛出检查型自定义异常的方法时,必须在。

2026-03-08 20:33:52 347

原创 Java中的String你真的学懂了吗

String是 Java 核心库java.lang包中的一个类,用于表示和处理字符串(字符序列)。它在 Java 编程中使用极其频繁。理解String不可变性:这是String最核心的特性。一旦一个String对象被创建,它所包含的字符序列就不能被修改(改变长度或更改某个位置的字符)。任何看似“修改”字符串的操作(例如拼接、替换、大小写转换),实际上都会创建并返回一个全新的String对象,原始对象保持不变。优点:安全(线程安全)、效率(字符串常量池优化)、哈希码缓存(hashCode()

2026-02-14 20:55:41 570

原创 Java中的浅拷贝与深拷贝

浅拷贝只复制对象本身,而不复制其内部引用的对象。这意味着,如果原对象包含其他对象的引用,浅拷贝后的新对象会共享这些引用对象。因此,修改新对象的引用字段可能会影响原对象。深拷贝不仅复制对象本身,还递归复制其内部所有引用的对象。这样,新对象与原对象完全独立,修改新对象不会影响原对象。在Java中,实现深拷贝通常需要手动复制每个引用字段,或使用序列化(如。字段指向不同对象,修改其中一个不会影响另一个。类的一个受保护方法,需要显式重写。在Java中,可以通过实现。进行浅拷贝,然后手动复制。,因为它们共享同一个。

2026-02-10 15:44:27 335

原创 Java中的重写和重载

何时使用重载:当需要在同一个类中为同一功能提供多个实现版本时,例如处理不同类型或数量的参数。这能简化API设计,提高代码复用性。何时使用重写:当子类需要改变或扩展父类的行为时,例如在继承体系中实现特定功能。这支持多态性,便于代码维护和扩展。

2026-02-03 20:11:07 254

原创 Java中的继承和多态

继承建立了类之间的层次关系,实现了代码复用和层次化建模。子类继承父类成员,并可添加或重写成员。多态基于继承(或接口实现)和方法重写,通过向上转型和动态绑定,实现了 "一个接口,多种实现"。它使程序更加灵活、可扩展和易于维护。理解并熟练运用继承和多态是掌握 Java 面向对象编程的关键。

2026-02-01 20:33:33 517

原创 Java中的类和对象你真的懂了吗?

类是抽象的,对象是具体的:类定义了概念,对象是概念的具象化。类是模板,对象是产品:一个类可以创建出多个对象(实例)。对象拥有状态和行为:每个对象都有自己的属性值(状态)并可以执行类中定义的操作(行为)。new关键字:用于创建对象,分配内存空间,并调用构造方法进行初始化。构造方法:一种特殊的方法,与类同名,在创建对象时自动调用,用于初始化新对象的状态。this关键字:在类的方法内部,this指代当前调用该方法的对象本身。理解类和对象是掌握 Java面向对象编程的基础。后续的概念如封装继承多态。

2026-01-31 20:07:58 228

原创 C++程序逻辑控制入门:3大结构搞定程序“执行顺序”

刚学C++时,我发现写程序最核心的问题不是“定义变量”“写输出语句”,而是“让代码按我想要的顺序执行”。比如想实现“输入成绩判断是否及格”“循环计算1到100的和”,这些都需要靠“程序逻辑控制”来实现。其实C++的逻辑控制本质就3种核心结构——顺序结构、选择结构、循环结构,掌握它们就能让程序“听话”。今天这篇文章,就带大家从本质到实战,彻底搞懂C++程序逻辑控制。本文核心内容:为什么需要程序逻辑控制?(一句话讲清核心价值)3大核心结构详解(顺序+选择+循环,附基础代码)

2025-12-28 15:21:58 669

原创 C++指针入门详解:从“地址”本质到实战应用

指针的核心本质是“内存地址”,指针变量是“存地址的容器”,记住两个核心符号:&(取地址)、(声明指针/解引用)。掌握“声明→赋值→解引用”的核心流程,再结合数组、函数、动态内存这三个常用场景,就能轻松上手指针。刚开始学指针时,建议多写代码实操,打印变量的值和地址,直观感受指针和变量的关系。避开野指针、空指针、类型不匹配这些坑,指针就能成为你编程的“利器”。

2025-12-28 12:26:33 717

原创 C++ 数组入门详解:从基础用法到避坑指南

在连续的内存空间中,存储一组相同数据类型的数据集合。简单理解:就像我们生活中的储物柜,每个格子(数组元素)大小一致(相同数据类型),排列紧密(连续内存),每个格子都有唯一的编号(数组下标),通过编号就能快速找到对应的物品(数组元素)。比如,要存储一个班级 50 名同学的成绩,不用定义 50 个独立变量(score1、score2...score50),只用一个 int 类型数组就能搞定,简洁又高效。// 方式1:定义时指定长度并初始化(推荐,清晰明了)

2025-12-27 17:39:33 652

原创 C++函数重载入门:一篇看懂同名函数的用法

在同一个作用域内,允许定义多个“同名但参数不同”的函数。编译器会根据你调用函数时传入的参数,自动匹配到对应的函数版本执行。举个生活中的例子:你去奶茶店点“珍珠奶茶”,可以选“中杯”“大杯”,虽然都叫“珍珠奶茶”,但分量(对应函数的参数)不同,店员(编译器)会给你正确的那一杯。函数重载也是这个道理,同名函数靠参数区分,不用记多个函数名,写代码更简洁。函数重载的核心就是“同名不同参”,编译器靠参数自动匹配函数版本,目的是让我们写代码更简洁,不用记一堆相似功能的不同函数名。

2025-12-27 11:51:11 808

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除