- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向对象jva语言程序设计课程第四章xin
面向对象JAVA语言程序设计 信息科学与技术学院 网络工程系 周文峰 第 4 章 面向对象编程 面向对象基本概念 Java的类与对象 成员变量与封装 成员方法 继承 多态 特殊类 接口 第 4 章 面向对象编程 主要任务: 理解面向对象编程的基本概念 了解类的封装方法 如何创建类和对象 了解成员变量和成员方法的特性 学习使用OOP方式进行程序设计 学习导读 Java程序是由一个个类定义组成的,编写Java程序的过程就是从现实世界中抽象出Java可实现的类并用合适的语句定义它们的过程,这个定义过程包括对类内各种属性和方法的定义,创建类的对象,也包括类间的各种关系和接口的定义。 方法是类的主要组成部分。在一个类中,程序的作用体现在方法中。方法是Java语言的基本构件。利用方法可以组成结构良好的程序。本章介绍方法的构成规则和设计、使用方法的基本要点。 4.1 面向对象基本概念 Java是完全面向对象编程语言。面向对象编程(OOP)是一种全新的编程理念,如果从来没有过OOP编程经验,需要从基本概念开始。 什么是对象?类又是什么?它们之间有什么关系?对象是如何通过消息和外部通讯的? 4.1.1 对象 在开发软件的信息世界中,对象定义为相关数据和方法的集合。 对象是现实世界真实对象的抽象模型。从现实世界真实对象中抽象出来的对象使用数据和方法描述其现实世界中的状态和行为特征,一般通过变量描述其状态,通过方法实现其行为。 变量是一种有名称的数据实体,而方法则是和对象相关的函数或过程。 4.1.2 封装 封装的含义是把类设计成一个黑箱,使用者只能看见类中定义的公共方法,而看不到方法实现的细节,也不能直接对类的数据进行操作,迫使用户通过接口去访问数据,这种封装正是OOP设计者追求的理想境界。 相关数据和方法封装到一个包里,为程序员带来了两个好处:模块化和数据隐藏。 4.1.3 消息 对象的行为由方法来实现,消息传递是对象之间进行交互的主要方式。 构成消息的三个要素是: ☆接收消息的对象 ☆接收消息后进行处理的方法 ☆方法所需要的参数 4.1.4 类 类就是对象的软件图纸、模板或原型,它定义了同类对象共有的变量和方法。 类和对象二者不太容易区分。一方面,由于软件对象都是现实对象或抽象概念的电子模型,另一方面,经常不加区分地将对象和类统称为“对象”。 Java编程就是设计类,可以采用自定义方法或继承方法设计一个类,然后使用它的实例对象完成具体的功能。 说明: (1) 所有东西都是对象。可将对象想象成一种新型变量;它保存着数据,但可要求它对自身进行操作。 (2) 程序中通过消息传递,各对象知道自己该做些什么。 (3) 每个对象都有自己的存储空间,可容纳其他对象。 (4) 每个对象都有一种类型。根据语法,每个对象都是某个“类”的一个“实例”。其中,“类”(Class)是“类型”(Type)的同义词。 (5)同一类所有对象都能接收相同的消息。 4.2 类 和 对 象 Java语言与其他面向对象语言一样,引入了类和对象的概念,类是用来创建对象的模板,它包含被创建对象的属性和方法的定义。因此,要学习Java编程就必须学会怎样去编写类,即怎样用Java的语法去描述一类事物共有的属性和行为。 对象的属性通过变量来刻画,而对象的行为通过方法来体现。方法可以操作属性形成一定的算法来实现一个具体的功能。类把属性和方法封装成一个整体。 4.2.1 定义类 类的声明 在类声明中,需要定义类的名称、对该类的访问权限、该类与其他类的关系等。类声明的格式如下: [修饰符]用于指定类的访问权限,可选值为public、abstract和final。 类的声明-类名 class 类名 类名用于指定类的名称,类名必须是合法的Java标识符。一般情况下,要求首字母大写。 类的声明-修饰符 public(公共的) 在没有任何修饰符的缺省情况下,类只能被同一个源程序文件或同一个包中的其它类使用。 加上public修饰符后,类可以被任何包中的类使用,称为公共类。 类的声明-修饰符 abstract(抽象的) 定义的类代表一个抽象的概念,就不能用它来实例化一个对象。 在OOP中,可能建立了一个不需要产生对象的类。例如,java.lang包中的Number类代表了数这个抽象概念,可以用它在程序中产生一个数的子类,如Interger或Float,但从Number中直接生成对象是没有意义的。 abstract说明的类称为抽象类,不能用它实例化一个对象,它只能被继承。 类的声明-修饰符 final(最终的) final说明的类称为最终
文档评论(0)