走上开放之路:Windows开发人员的Java Web支持基础(二) - 编程入门网
类成员的访问级别是什么呢?您可能会猜想默认的访问级 别应该是 public ,在 Visual Baisc 中默认的访问级别就是 public 。实际上,在 Java 语言中默认的访问级别称为 包访问,因为只有同一个包中的类才有权访问这些类成员。如果 您希望将一个成员声明为包访问的,就不要使用任何访问修饰符关键字。
Java 语言另外定义了一个访问级别,称为 受保护级别。当您希望在子类中可以访问一个 超类的成员时,就可以使用 protected 修饰符。在 本文稍后我们会介绍受保护的类。 走上开放之路:Windows开发人员的Java Web支持基础(二)(5)时间:2011-04-30 IBM Mark Weber创建对象 如果您浏览一下清单 12 中 BankAccount 类的 main() 方法就会看到创建一个新 BankAccount 对象的代码,如下所示: BankAccount account = new BankAccount(); 首先,您声明了一个 BankAccount 类型的对象(也就是一个变量)。正如您可能猜到的 一样, new 关键字会申请足够的内存来创建一个新对象。新创建的对象实际上是使用这个语 句创建的: BankAccount() 。这条语句很像是一个方法调用。然而,清单 12 并没有声明一 个这样的方法,因此您可能会纳闷这条语句到底执行什么操作。 实际上,这条语句是一个构造函数调用。如果没有构造函数,您就不能创建 Java 对象, 因此如果您编写了一个没有构造函数的类,那么编译器就会为您创建一个默认的构造函数。 这就是为什么即使我们没有在 BankAccount 类中显式地编写一个构造函数,仍然可以可以调 用 BankAccount() 。 Java 类:快速回顾 类成员:Java 类成员有 域和 方法。域名表示数据,方法表示操作。类是一类对象的声 明,它是使用类成员来定义的。 访问修饰符:您可以使用 访问修饰符来限制类成员和构造函数在类外的可见性。大部分 情况下,您会通过将类域声明为私有的从而实现对数据的封装,通过编写一些公开的方法来 定义类的接口。 构造函数:您将 构造函数定义为一种让其他程序员创建您的类的实例的一种方法。通常 您都会定义构造函数,从而简化其他程序员创建正确初始化的对象的工作。 Visual Basic 通过让您为每个类定义一个调用 Class_Initialize 的过程来支持构造函 数的概念,但是它与 Java 语言不同:Visual Basic 不允许您向这个过程传递参数。 Java 构造函数并没有返回值;所有的构造函数都会隐式地返回所定义类的一个新对象。 每个 Java 构造函数必须使用与声明它所在的类的类名完全相同的名字。除此之外,构造函 数的声明就与方法的声明完全相同了。具体来说,构造函数与 Java 方法一样,也可以接受 参数。 严格来讲,构造函数并不是一种方法,因为方法是类的成员,而构造函数则不是。类成员 和域以及方法一样,在子类中都可以继承。构造函数永远都不能继承。 显式引用 Java 语言使用 this 关键字来引用当前对象。您可以使用 this 关键字显式地引用当前 类中的域、方法和构造函数。 this 关键字最常见的用法是用来解决变量作用范围的问题。例如, BankAccount 类有一 个 balance 域。让我们假设您希望编写一个名为 setBalance(float balance) 的方法,这 个方法可以设置该对象的 balance 域。问题是在 setBalance(float balance) 方法中,当 您引用 balance 时,您实际上是在引用 balance 参数,而不是 balance 域。您可以使用 this 关键字显式地引用这个域,方法如清单 13 所示。 清单 13. this 关键字
走上开放之路:Windows开发人员的Java Web支持基础(二)(6)时间:2011-04-30 IBM Mark Weber继承 继承是面向对象编程最重要的优点之一。它是 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |