Java程序设计基础
第4章 Java类与对象
面向对象技术是当今最热门的一项技术,是一种运用对象、类、继承、封装和多态性等概念来构造系统软件的开发方法。面向对象是Java的重要特性之一,Java是一种纯的面向对象的程序设计语言。
本章从面向对象基本概念着手,介绍了对象、类,面向对象系统的四大特性,并详细介绍了类的创建、类的继承以及对象的创建和撤消。
对象和类
1) 对象(object)
在现实世界中,任何事物都可以被看作是对象。这些现实生活中的对象都有两个共同的特点:
它们都有自己的状态和属性,这些状态和属性可用一些数据来表示。
它们都有自己的行为或操作,能改变状态。
把现实世界中的对象进行抽象化和模型化,就产生了面向对象技术中的对象概念,它们同样具有状态和行为。
面向对象技术中的对象是由描述该对象属性的数据以及可以对这些数据施加的所有行为封装在一起构成的统一体。
通常把数据称为属性,Java中也称为成员变量。把行为称为方法,Java中也称为成员函数。
2)类(Class)
不同的对象常常有相同的特征。在面向对象技术中,同样可以为同一类对象创建一个模板,然后利用这个模板来创建许多的对象。
类是对具有相同数据和相同行为的一组相似对象的定义,类定义了对象的属性和用于控制对象行为的方法。
对象由类而来,类是创建对象的模板。对象是类的实体(Instance),一种类可以有许多个对象实体。
3)面向对象技术四个要点
(1) 面向对象的软件系统是由对象组成的,软件中的任何元素都是对象。
(2) 把所有对象都划分成各种对象类(简称为类,Class),每个对象类都定义了一组数据和方法。数据用于表示对象的静态属性。方法是允许施加于该类对象上的操作。
(3) 按照子类和父类的的关系,把若干个对象类组成一个层次结构的系统。在这种层次结构中,通常下层的派生类具有和上层的基类相同的特性,这种现象称为继承。
(4) 对象彼此之间仅能通过传递消息互相联系。
面向对象系统的四个主要特性是:抽象、继承、封装和多态性。
1) 抽象
抽象是抽出事物的本质特性而暂时不考虑它们的细节。抽象用于标识一个特定应用程序所涉及的对象。Java为了更好地支持分层抽象的程序设计方法,引入了抽象类和抽象方法。抽象类可以包含抽象方法,但没有实现方法,一般它只能作为其它类的超类。
2) 继承
在面向对象的技术中,继承(Inheritance)是自动地共享类、子类和对象中的方法和数据的机制,它能够直接获得已有的性质和特征,而不必重复定义它们。
Java只支持单一的继承,这大大降低了复杂度。在Java中不支持多重继承,但它引入了接口的概念,从程序设计的角度来看,接口和单重继承的结合使用可以实现多重继承的主要功能。
3) 封装
封装(Encapsulation)是一种信息隐蔽技术,它将代码和代码所操作的数据结合在一起,并防止外部的干扰和误用。用户只能见到对象封装界面上的信息,而对象内部的信息对用户来讲是隐蔽的。
在面向对象的设计中使用同一原则以封装每一个对象的属性和方法。只有对象的某些方法是可以被外界使用的,而方法的实现是不可见的。封装通过隐藏类内对象的内部实现来帮助抽象,然后使用对象,而不必理解对象的类是如何实现的。通过对象封装,实现了模块化和信息隐藏。
4) 多态性
在希腊语中,多态(Polymorphism)指多种形态。两个或多个类可以有名字相同、基本目的相同,但实现方式不同的行为,这就是多态性。
Java通过方法重载来实现多态。一个类中可以有多个具有相同名字的方法,由传递给它们的不同的个数和类型的参数来确定使用哪种方法。
Java程序设计(chap4) PPT课件 来自淘豆网m.daumloan.com转载请标明出处.