购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.2 类的示例

在现实世界中,经常会发现许多单个对象都是同类。有可能成千上万条狗都是一样的品种,比如都是哈士奇或者藏獒。每种类型的狗都具有相同的行为。在面向对象的术语中,我们将某条狗称为狗对象类(class of objects)的实例(instance)。类(class)就是创建单个对象的品种。

下面是一个Dog(狗)类的实现:

字段color和name是对象的状态,方法bark和wag定义了与外界的交互。

你可能已经注意到,Dog类不包含main方法。这是因为它不是一个完整的应用程序。这里只是定义了Dog这个类,并可能会在应用程序中使用。创建和使用新的Dog对象是应用程序中其他类的责任。

下面的DogDemo类创建两个单独的Dog对象,并调用其方法:

在这个例子中,类的名称是Dog,Dog对象的名称分别是dog1和dog2,可向Lucy对象发出的请求包括叫唤(bark)、摇尾(wag)。我们是通过使用new关键字来新建对象的。为了向对象发送一条消息,我们列出对象名(dog1、dog2),再用一个句点符号(.)把它同消息名称(bark、wag)连接起来。从中可以看出,使用一些预先定义好的类时,我们在程序里采用的代码是非常简单和直观的。

执行程序,输出为: vX/6M1u652lG9YxOyJZG7cMli7etaR8QWj5bC7zBo4ULbD0DM/uHsjcyDfRYHw67

   Black Lucy barking...
   Black Lucy wagging...
   White Lily barking...
   White Lily wagging...
点击中间区域
呼出菜单
上一章
目录
下一章
×