3.1.4 使用多个构造函数
大多数情况下可以用多种方式创建对象。为了适应这种情况,你需要提供多个构造函数。例如,请看Count类:
一方面,我们可以初始化属性count为0,实现这一点很简单,即可以在一个构造函数中初始化count为0,如下所示:
另一方面,我们可以传递一个初始化参数,从而可以设置count为其他数字:
这叫作重载方法(重载适用于所有方法,不只是构造函数)。大部分的面向对象语言都提供了重载方法的功能。
重载方法
重载可以让程序员重复使用相同的方法名,只要每次方法签名不同即可。方法签名包含了方法名以及参数列表(如图3.1所示)。
图3.1 签名的组成
所以,以下所有方法均拥有不同的签名:
签名
方法签名可能包含返回值类型,也可能不包含返回值类型,这取决于不同的语言。在Java和C#中,返回值类型并不属于签名的一部分。例如,以下代码即使返回值类型不同,也不能通过编译: ...
Get 面向对象的思考过程(原书第5版) now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.