上节课讲解了Java面向对象的基本概念,本节重点介绍面向对象中的方法重载。作为Java三大特性之一,面向对象是高级编程的重要基础,深入理解其核心理念对掌握Java编程至关重要。
1、 方法签名
2、 方法签名由方法名称及参数列表共同构成。
3、 一个类中不允许存在两个方法名和参数列表完全相同的方法,否则会导致方法签名重复,编译无法通过。
4、 同一类中允许方法名相同,但参数列表必须不同,示例代码如下:
5、 代码编译出错需修正
6、 }
7、 代码编译无误
8、 }
9、 方法重载
10、 在Java中,允许同一类中多个方法名相同但参数列表不同,这被称为方法重载。
11、 }
12、 编译时按签名确定调用方法
13、 编译时编译器依据方法签名决定调用哪个方法,重载的方法虽同名,实则视为完全不同的独立方法。
14、 }
15、 老黑讲解Java基础,内容详实易懂,适合初学者阅读学习。
16、 阅读老黑讲Java之基础教程与老黑讲Java之面向对象两本书籍,系统学习Java编程基础知识与面向对象核心概念。
17、 老黑讲解了Java基础、面向对象编程以及Spring核心技术的三本教程内容,系统地介绍了Java语言的核心知识体系与应用框架。
18、 构造方法的语法格式
19、 构造方法属于特殊方法,需满足特定命名规则与无返回值类型的要求。
20、 构造方法名必须和类名一致。
21、 构造方法无返回值,无需void修饰,其伪代码示例如下:
22、 初始化对象参数
23、 }
24、 利用构造函数初始化类的成员变量。
25、 }
26、 }
27、 利用new创建对象时可初始化成员变量,如:
28、 创建一个名为老黑的18岁男性人物对象。
29、 正确使用this关键字
30、 this关键字位于方法内部,代表调用该方法的当前对象,哪个对象调用,this就指向哪个对象。例如:
31、 创建一个名为老黑、年龄18岁、性别为男的人的实例。
32、 打印出对象p的姓名属性,结果显示为老黑。
33、 在People类中,this指向当前对象实例,构造方法里的this.name与p.name等效,因此调用时获取的值相同。
34、 默认构造函数
35、 Java中每个类都至少有一个构造方法。
36、 若程序员未定义构造方法,编译器将自动生成一个无参的默认构造方法。
37、 定义构造方法后,Java编译器将不再自动添加默认构造方法。代码示例如下:
38、 }
39、 构造方法重载
40、 一个类可包含多个同名但参数不同的构造方法,这种特性称为方法重载。例如,通过不同参数列表实现多个构造函数。

