- 博客(57)
- 收藏
- 关注
原创 Java基础 6.22
断点调试是程序员查找代码错误的必备技能,通过在指定行设置断点,可以逐步执行并观察变量值变化。文章介绍了断点调试的基本概念、常用快捷键(F7跳入方法、F8逐行执行、Shift+F8跳出方法、F9继续执行)以及多个实际应用案例,包括查看数组越界异常、追踪Java底层源码实现(如Arrays.sort方法)、观察对象创建过程和动态绑定机制等。通过具体代码演示,展示了如何利用断点调试分析程序执行流程,提升调试效率和Java编程水平。
2025-06-22 23:53:37
254
原创 Java基础 6.21
本文介绍了Java中Object类的三个重要方法。equals()方法用于比较对象内容,示例展示了不同对象和字符串的equals比较;toString()方法默认返回类名和哈希值,但通常会被重写以输出对象属性;finalize()方法在对象被垃圾回收前调用,可用于释放资源但实际开发中很少使用。hashCode()方法则用于提高哈希结构的容器效率,与对象地址相关但不能完全等同。
2025-06-21 17:04:15
275
原创 Java基础 6.20
摘要:本文详细讲解了Java中Object类的equals方法,对比了"=="和equals的区别。"=="是运算符,可以比较基本类型(值)和引用类型(地址);而equals是Object类方法,默认比较引用对象的地址。为比较对象内容,需要在子类中重写equals方法。示例展示了如何重写Person类的equals方法来比较姓名、年龄和性别属性,实现对象内容的相等性判断。理解这两种比较方式的区别对Java编程至关重要。
2025-06-20 22:32:23
197
原创 Java基础 6.18
摘要:本文介绍了Java多态的两个重要应用:动态绑定机制和多态数组。动态绑定机制在调用对象方法时会自动绑定到对象的运行类型,而属性则没有此机制。多态数组允许将不同子类对象存储在父类类型数组中,通过instanceof判断和向下转型可调用子类特有方法。文章通过Person、Student、Teacher等类的实例演示了多态数组的使用,并展示了如何通过类型判断调用子类特有的study()和teach()方法。此外还介绍了多态参数的应用,在Employee案例中通过方法重写和类型判断实现不同员工类型的差异化处理。
2025-06-18 16:44:25
178
原创 Java基础 5.27
Java多态特性注意事项:1.属性不存在重写,访问取决于编译类型;2.instanceof用于判断对象运行类型及其子类;3.向下转型需确保类型匹配,否则抛出ClassCastException;4.父类引用指向子类对象时,方法调用看运行类型,属性访问看编译类型。实践案例展示了属性访问、方法调用及类型转换的具体表现。
2025-05-27 15:45:43
281
原创 Java基础 5.21
多态的实现需要继承关系,分为向上转型和向下转型。向上转型是父类引用指向子类对象,可调用父类成员但不能访问子类特有成员,实际运行效果由子类决定。向下转型需将父类引用强制转换为子类类型,要求父类引用原本就指向目标子类对象,转型后可调用子类所有成员。两种转型方式分别对应不同的语法规则和使用场景。
2025-05-21 17:47:46
360
原创 Java基础 5.13
多态是面向对象编程的第三大特征,建立在封装和继承基础之上,旨在提高代码的复用性和维护性。传统方法由于缺乏多态性,导致代码复用性低且难以维护。多态通过方法的重写和重载体现,允许方法或对象具有多种形态。对象的多态性体现在编译类型和运行类型可以不一致,编译类型在定义时确定且不可变,而运行类型可以变化。理解编译类型和运行类型的区别是掌握多态的关键。
2025-05-13 17:47:07
379
原创 Java基础 5.10
该课堂练习展示了Java中的方法重写(Override)概念。首先定义了一个Person类,包含name和age属性,以及一个say方法用于返回自我介绍。接着,Student类继承Person类,并增加了id和score属性,同时重写了say方法,扩展了自我介绍的内容。在main方法中,分别创建了Person和Student对象,并调用say方法输出自我介绍。通过此练习,展示了子类如何通过重写父类方法来扩展功能。
2025-05-10 22:12:28
394
原创 Java基础 4.19
深入理解this的本质,调用hashCode方法,查看this和dog对象的地址。如果是两个对象,则会对应不同地址,this的使用细节和注意事项,以及相关练习
2025-04-19 13:18:50
404
原创 Java基础 4.3
在某些情况下,我们需要定义成员方法(简称方法)比如人类:除了有一些属性外(年龄,姓名..)我们人类还有一些行为比如:可以说话、跑步..通过学习,还可以做算术题。这时就要用成员方法才能完成。
2025-04-03 23:01:10
1037
原创 Java基础 3.31
注意:从猫类到对象,目前有几种说法:1.创建一个对象 2.实例化一个对象 3.把类实例化。属性:name, age, color, 行为:run, cry, eat。int:Java提供地数据类型。猫对象(具体一只猫)对象就是一个具体实例。
2025-03-31 23:22:45
255
原创 Java基础 3.28
语法:类型[][] 数组名 = new 类型[大小][大小] int a[][] = new int[2][3]二维数组的存储机制如图所示。用二维数组创建杨辉三角。
2025-03-28 23:04:57
983
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人