接口
已经提过,java 类只允许单继承,这意味着 Java 类只能扩展一个类。Java 语言的设计者感到多重继承太复杂,因此他们改为支持 接口。 接口类似于不能实例化的方法,它定义有方法,但实际上并不实现这些方法。
声明接口的方法与声明类相似,不同之处是使用 interface 关键字而非 class 关键字。接口可以扩展任意数量的超接口。接口内的方法不包含实现。接口方法只是简单的方法定义;它们没有方法体。这与 Visual Basic 使用的接口概念相同;接口由属性和方法声明组成,没有代码。
Account 接口
清单 18 中的代码展示如何为银行帐户编写定义一组功能的基本 Account 接口。注意,在接口中声明的方法没有方法体。
清单 18. Account 接口
public interface Account {
public static final float INTEREST = 0.35F;
public void withdraw(float amount);
public void deposit(float amount);
}
实现接口
Java 类只可扩展一个类,但它可以 实现任意数量的接口。当类实现接口时,它必须实现该接口中定义个每个方法。
清单 19 定义了一个实现 Account 接口的 SavingsAccount 类。由于 Account 接口定义两个方法―― withdraw(float amount) 和 deposit(float amount) ,所以, SavingsAccount 类必须提供这两个类的实现。 SavingsAccount 类仍可以扩展另一个类,而且它可以实现任何其他接口,只要它们定义的成员与 Account 接口不同即可。
清单 19. 实现接口
public class SavingsAccount implements Account {
private float balance;
public SavingsAccount(float balance) {
this.balance = balance;
}
public void cashCheck(float amount, float fee) {
withdraw(amount+fee);
}
public void withdraw(float amount) {
balance += balance;
}
public void deposit(float amount) {
balance -= balance;
}
到此为止,您已经掌握了 Java 语言的基本组成,并能编写简单的 Java 程序。特别是,您应能:
编写带有 main() 方法的 Java 类,编译并运行它。
编写 Java 接口并编译它。
为您的类编写一个或多个构造函数。
编写扩展另一个类并实现一个或多个接口的类。
通过 new 关键字和构造函数调用来创建和使用对象。
您应有足够的信心来研究和编写更高级的 Java 代码。最好使用 Java 平台自带的类着手进行。获得使用这种语言经验的最佳方法是浏览 API 文档(请参阅 参考资料),然后使用这些类开始编写程序。另外,要获得补充本文的某些选择资源,请参阅侧栏 Honing your skills。
¥498.00
¥299.00
¥399.00
¥29.00