- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java程序设计实例教程-第3章
Java程序设计实例教程
第3章 面向对象基础
本章要点
定义类、方法、变量
构造方法
面向对象的基本概念
方法及重载
this关键字
static关键字
访问控制
对象清理
所谓面向对象的方法学,就是使我们分析、设计和实现一个系统的方法尽可能地接近我们认识一个系统的方法。包括:
面向对象的分析(OOA, Object-Oriented Analysis)
面向对象的设计(OOD, Object-Oriented Design)
面向对象的程序设计(OOP, Object-Oriented Program)
面向对象技术主要围绕以下几个概念:
对象(Object)、抽象数据类型(ADT)、类(Class)、类型层次(子类)、继承性(Inherit)、多态性。
3.1 面向对象的基本概念
对象有两个层次的概念:
现实生活中对象指的是客观世界的实体;
程序中对象就是一组变量和相关方法的集合,其中变量表明对象的状态,方法表明对象所具有的行为。
——对象
3.1 面向对象的基本概念
可以将现实生活中的对象经过抽象,映射为程序中的对象。对象在程序中是通过一种抽象数据类型来描述的,这种抽象数据类型称为类(Class)。
——对象
3.1 面向对象的基本概念
类是描述对象的“基本原型”,它定义一类对象所能拥有的数据和能完成的操作。在面向对象的程序设计中,类是程序的基本单元。
相似的对象可以归并到同一个类中去,就像传统语言中的变量与类型关系一样。
程序中的对象是类的一个实例,是一个软件单元,它由一组结构化的数据和在其上的一组操作构成。
——类
3.1 面向对象的基本概念
——类
3.1 面向对象的基本概念
变量:指对象的所知道的状态。
方法:指对象的功能单元。
消息
软件对象通过相互间传递消息来相互作用和通信,一个消息由三部分组成:
1. 接受消息的对象
2. 接收对象要采取的方法
3. 方法需要的参数
——类
3.1 面向对象的基本概念
一个例子
在程序中所操作的对象是类的一个实例。
创建一个对象: Hello obj=new Hello();
调用方法: obj.showString();
调用对象的方法相当于给对象发送消息,收到消息的对象通过改
变自身的状态或者向其它对象发送消息来响应消息。
——类
3.1 面向对象的基本概念
为什么要使用类?
采用简单数据类型表示现实世界中概念的局存在很大的限性。例如:采用int型数据表示一个日期概念,需要使用3个变量:
int day, month, year;
如果要表示2个人的生日,就要使用6个变量
并且在使用中必须时刻注意三者的联系和约束关系
同时在使用日期概念时要同时对三个变量进行访问
使用类可以把现实问题中的对象映射为程序中的一个整体——类。
——类
3.1 面向对象的基本概念
本章要点
定义类、方法、变量
构造方法
面向对象的基本概念
方法及重载
this关键字
static关键字
访问控制
对象清理
3.2 定义类、方法和变量
在Java中,类的定义使用class关键字来实现。Java中的类包括两部分:类首说明和类体,类的一般格式如下:
——定义类
[修饰符] class 类名 [extends 父类名 implements 接口名1,接口名2,...]
{
声明属性;
声明方法;
声明构造方法;
}
3.2 定义类、方法和变量
定义类时需要注意以下几点:
修饰符是可以省略的,修饰符可以是public、abstract、final。当修饰符为public时,表示该类能被程序中其他代码访问;当修饰符为abstract时,表示该类为抽象类,抽象类不能直接实例化对象,它只能被继承;当修饰符为final时,表示该类不能再被继承,它是最终类,此时该类中的属性和方法也是final类型。由此可知abstract和final是相互矛盾的修饰符,abstract和final这两个关键字不能同时修饰一个类。当修饰符为缺省时,表示该类可以被同一个包中的类或者其子类访问,无论子类和该类是否在同一个包中。但不能使用private修饰类名。
——定义类
3.2 定义类、方法和变量
类名的命名遵循标识符的命名规则,推荐类名的首字母大写,当类名有多个单词组成时,每个单词的首字母均大写,如MyClass。类名后面还可以使用extends关键字继承一个父类(注意,只能是继承一个父类!),也可以使用implements关键字实现一个或多个接口,当然extends和implements也可以同时使用,也可以都不使用。
类体可以
文档评论(0)