WEB开发网
开发学院软件开发Java 走上开放之路: Windows 开发人员的 Java Web 支持... 阅读

走上开放之路: Windows 开发人员的 Java Web 支持基础(下)

 2009-11-08 00:00:00 来源:WEB开发网   
核心提示: 扩展的例子 让我们假设您想创建一个新的 CheckingAccount 类, CheckingAccount 是一种特殊的 BankAccount ,走上开放之路: Windows 开发人员的 Java Web 支持基础(下)(10),换而言之, CheckingAccount 与 BankAc

扩展的例子
让我们假设您想创建一个新的 CheckingAccount 类。 CheckingAccount 是一种特殊的 BankAccount 。换而言之, CheckingAccount 与 BankAccount 具有相同的属性和操作。然而, CheckingAccount 多了一个操作——存入现金。因此您可以定义 CheckingAccount 类,使其对 BankAccount 进行扩展,并添加一个 cashCheck() 方法,如清单 14 所示。


清单 14. 扩展类
public class CheckingAccount extends BankAccount { 
  public void cashCheck(float amount) { 
    withdraw(amount); 
  } 
} 

子类的构造函数

构造函数实际上并不是类的成员,构造函数也不会被子类继承。 BankAccount 构造函数创建的是 BankAccount 对象,因此您不能在 CheckingAccount 类中使用它来创建 CheckingAccount 对象。然而,您可以使用超类的构造函数作为子类的一部分使用。换而言之,您通常需要在子类的构造函数中调用超类的构造函数,从而对子类的对象进行部分初始化。您可以使用 super 关键字实现这种功能,后面跟上一串参数,表示您要调用的超类的构造函数的参数。如果您正在一个构造函数中使用 super 关键字来调用超类的构造函数,那么它就必须作为构造函数体的第一条语句出现。

例如,假设您要创建一个 CheckingAccount 构造函数来对 CheckingAccount 对象进行初始化。您希望创建的 CheckingAccount 对象都有 balance 初始值,因此您要传递一个美元数量作为参数。这与 BankAccount 类中的构造函数完全相同,因此您想使用构造函数来为您实现这种功能,如清单 15 所示。


清单 15. 子类的构造函数
public class CheckingAccount extends BankAccount { 
  public CheckingAccount(float balance) { 
    super(balance); 
  } 
  public void cashCheck(float amount) { 
    withdraw(amount); 
  } 
} 

上一页  5 6 7 8 9 10 

Tags:走上 开放 之路

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接