- 1、本文档共100页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]04 Jaa面向对象编程
第3章 Java面向对象编程 本章教学内容 面向对象概述 定义类 创建对象 成员数据和方法 给方法传参数 构造函数 访问说明符 本章教学内容 修饰符 重载 包 继承的概念 在Java中实现继承 本章教学内容 接口 方法覆盖 多态性 使用super 面向对象概述 面向对象(OO,Object Oriented)是一种思想,自上世纪90年代以来成为软件开发方法的主流。 面向对象程序设计是在面向对象思想指导下进行的软件开发工作,由OOA(面向对象分析),OOD(面向对象设计),OOP(面向对象编程)三个部分构成。 面向对象概述 面向对象与面向过程 面向过程是把一件事、一项工程分解为一个个的功能模块,用函数来实现。函数是面向过程的核心。 面向对象是把一项工程看成是一个个的对象组成,这些对象之间的相互关系,构成了整个项目。类和对象是构成面向对象的程序的主体,也是本章讨论的重点。 面向对象概述 面向对象具有三个基本特征:封装、继承和多态。 封装(Encapsulation),是指将对象的实现细节隐藏起来,然后用公共方法来暴露该对象的功能。(Java中成员变量一般不用public) 继承(Inheritance),是软件实现复用与共享的重要方式,当子类继承父类后,子类将获得父类的属性和方法,并可以在父类的基础上扩展自己的功能。(Java中继承需要使用关键字extends) 多态(Polymorphism),多种形态。是指在编译或运行时,相同名称的方法具有不同的行为。(方法重载和方法覆盖是两种多态技术) 问题陈述 Happy聊天室的用户类Customer类有如下的属性和行为: 创建一个顾客类Customer。该类存储顾客的个人信息:顾客ID号、顾客名、电话、邮编。为顾客类编写一个方法,该方法能显示顾客的个人信息。 定义类 语法 定义类 类的命名规则: 不能为 Java 中的关键字。 不能包含空格或点号“. ”。 可以以下划线“_”、字母或“$”符号开头。 创建对象 创建一个对象分两步进行: 声明对象的引用变量或名称。 创建对象的一个实例。 语法 类名 对象 创建对象 例子 Box mybox; 在使用对象之前必须给它们分配内存。由new操作符来完成。 mybox = new Box(); 成员数据 定义一个成员数据的语法为: 例子 方法 语法: [访问说明符] [修饰符] 返回类型 方法名 ([参数列表]){ //语句 } 例子 使用成员数据和方法 使用成员数据 成员数据能用在不同的类中,通过创建类的对象然后用点”.”引用对象的成员数据。 调用方法 调用方法,必须是方法名后跟括弧和分号。 如果两个方法在同一个类里面,可以直接使用该方法的名字进行调用。类的一个方法能调用相同类里的另一个方法。 如果两个方法不在同一个类中,一个方法通过创建类的对象然后用”.”操作符指向另一个方法,从而调用不同类里的方法。(static修饰的静态方法有点特殊) 示例:使用成员数据和方法 class Box { double width; double height; double depth; double volume() { return width * height * depth; } } 实例分析 实例分析 步骤1:说明类 实例分析 步骤2:定义类的变量 实例分析 步骤3:说明类中的方法 实例分析 步骤4:初始化变量 实例分析 步骤5:编写代码显示测试值 实例分析 步骤6:编写main()方法 步骤7:调用方法 步骤8:编译运行程序 思考 编写CustomerCollection类,该类保存并显示三个顾客的信息。 给方法传参数 传值调用 引用调用 传值调用 引用调用 构造函数 声明构造函数的语法规则 默认构造函数 构造函数的语法规则 一个新对象初始化的最终步骤是去调用对象的构造函数。 构造函数必须满足以下条件: 方法名必须与类名称完全相匹配; 不要声明返回类型; 不能被static、final、synchronized、abstract、native修饰。 默认构造函数 默认构造函数是没有参数的构造函数,可以显式定义类的默认构造函数。 当一个类没有包含构造函数时,Java将自动提供一个默认构造函数。该构造函数没有参数,用public 修饰,而且方法体为空。格式如下: public classname(){} 只要类中显式定义了一个或多个构造函数,而且所有显式定义的构造函数都带参数,那么将失去默认构造函数。 示例:构造函数 //第一个构造函数,无参数,默认给出长宽高 Box(){ width=20; height=30; depth=15; } //第二个构造函数,给出长宽高的参
文档评论(0)