快速业务通道

走上开放之路: ASP 开发人员的 J2EE 基础(上) - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-18
个成员是方法: deposit() 和 withdraw() 是实例方法, setInterest() 是类方法。注意,您使用对象名称来访问实例变量,使用类名称来访问类成员。

清单 12. BankAccount 类

public class Account { public class BankAccount {   private float balance;     // an instance field   private static float interest; // a class, or static, field   // an instance method   public void deposit(float amount) {     balance += amount;   }   // an instance method   public void withdraw(float amount) {     balance -= amount;   }   // a class, or static, method   public static void setInterest(float interestRate) {     interest = interestRate;   }   public static void main(String[] args) {     // create a new account object     BankAccount account = new BankAccount();     // deposit $250.00 into the account     account.deposit(250.00F);     // set interest rate for all BankAccount objects     BankAccount.setInterest(5.0F);   } }

访问修饰符

与 Visual Basic 类似,Java 语言允许设置类成员的可视性。Java 成员使用 public 修饰符表明可以在类的内部和外部访问某个成员。Java 使用 private 修饰符表明只能在类的内部访问该成员。在类的外部是不能访问私有成员的。

请再次考虑 BankAccount 类。假定您希望使用 BankAccount 对象的程序员通过使用 deposit() 和 withdraw() 方法来更改余额。您要将这些方法声明为 public ,因此可以在 BankAccount 类的代码之外调用这些方法。但是,您不希望其他程序员直接更改 balance 域,因此 balance 域的访问修饰府要采用 private 。

您可能搞不明白默认访问级别(即没有使用 public 或 private 修饰符声明的类成员的访问级别)是哪个级别。您可能认为默认访问级别是 public ,即 Visual Basic 中的默认访问级别。而实际上,Java 语言中的默认访问级别称为 包访问,因为只有同一个包中的类才能访问这些类成员。如果要将某个成员声明为包访问,请不要使用访问修饰符关键字

Java 可以定义一个以上的访问级别,称为 protected 。如果希望某个成员可以在子类中访问,则请使用 protected 修饰符。我们将在 本文后面 讨论一些 protected 类成员。

创建对象

如果您研究一下清单 12 中 BankAccount 类的 main() 方法,就会明白下列代码创建了一个新 BankAccount 对象:

BankAccount account = new BankAccount();

首先,声明一个类型为 BankAccount 的对象(即变量)。您能会猜到, new 关键字留出足够的内存来创建一个新对象。新对象实际上由以下语句创建的: BankAccount() 。该语句看起来像一个方法调用。然而,清单 12 没有声明此名称的方法,因此您可能想知道这个语句是干什么的。

实际上,这个语句是一个构造函数调用。没有构造函数就不能创建 Java 对象,因此,如果您编写的类没有构造函数,编译器就创建一个默认的构造函数。这就是可以调用 BankAccount() 的原因,即使您在 BankAccount 类中没有显式编写构造函数也是如此。

Visual Basic 支持构造函数的概念,方法是允许为每个类定义一个称为 Class_Initialize 的过程,与 Java 语言不同,它不允许传递参数。

Java 构造函数没有返回类型;所有构造函数都返回定义它的类的新对象。每个 Java 构造函数都必须与声明它的类有完全相同的名称。否则,构造函数声明与方法声明几乎一样。特别是,构造函数可以带参数,就像 Java 方法一样。

严格地说,构造函数不是一种方法,因为方法是类成员,而构造函数不是。类成员与域和方法

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号