




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第四讲面向对象编程 面向对象的程序设计 第2页 第四讲面向对象编程 类与构造函数继承的实现this与super方法的覆盖方法的重载 本章要点 面向对象的程序设计 一 类与构造方法 面向对象的程序设计 第4页 1 类的定义 把相似的对象划归成一个类 在软件中 类 就是一个模板 它定义了通用于一个特定种类的所有对象的状态 变量 和行为 方法 类是创建对象的模板 对象是类的实例 面向对象的程序设计 第5页 1 类的定义 从程序设计的角度看 类是面向对象程序中最基本的程序单元 类实质上定义的是一种数据类型 这种数据类型就是对象类型 所以我们可以使用类名称来声明对象变量 声明对象变量之后 还不能使用对象 必须用运算符new创建对象实体之后 才能使用对象 面向对象的程序设计 第6页 1 类的定义 修饰符class类名 extends父类名 implements接口名 类型成员变量 修饰符类型成员方法 参数列表 类型局部变量 方法体 面向对象的程序设计 第7页 1 类的定义 Java的常用包 java applet 包含一些用于创建Java小应用程序的类 java awt 包含一些用于编写与平台无关的图形界面 GUI 应用程序的类 java io 包含一些用作输入输出 I O 处理的类 java lang 包含一些Java语言的基本类与核心类 如String Math Integer System和Runtime 提供常用的功能 这个包中的所有类是被隐式导入的 包含用于建立网络连接的类 与java io同时使用完成与网络有关的读写 java util 包含一些实用工具类和数据结构类 面向对象的程序设计 第8页 2 构造方法 构造方法是类的一种特殊方法 构造方法的方法名与类名相同 构造方法没有返回值 构造方法的主要作用是完成类对象的初始化工作 构造方法一般不能由编程人员显式地直接调用 必须通过new关键字来自动调用 从而创建类的实例 面向对象的程序设计 第9页 2 构造方法 Java的类都要求有构造方法 如果没有定义构造方法 Java编译器会为我们提供一个缺省的构造方法 也就是不带参数的构造方法 一个命令 JavapPoint 面向对象的程序设计 第10页 3 new关键字的作用 为对象分配内存空间 引起对象构造方法的调用 为对象返回一个引用 面向对象的程序设计 第11页 4 缺省构造函数 当我们用缺省的构造函数初始化对象时 系统用默认值初始化对象的成员变量 面向对象的程序设计 二 继承与多态 面向对象的程序设计 第13页 1 方法的重载 特点 同一名字不同数目的参数不同类型的参数Java中使用了大量的方法重载 重载是一个非常重要的部分 它是面向对象理论的重要基础之一 面向对象的程序设计 第14页 1 方法的重载 构造方法的重载同一个类中存在着若干个具有不同参数列表的构造方法当一个类因构造方法的重载而存在着若干个构造方法时 创建该类对象的语句会自动根据给出的实际参数的数目 类型和顺序来确定调用哪个构造方法来完成对新对象的初始化工作 面向对象的程序设计 第15页 2 特殊变量this this变量代表对象本身当类中有两个同名变量 一个属于类 类的成员变量 而另一个属于某个特定的方法 方法中的局部变量 使用this区分成员变量和局部变量 使用this简化构造方法的调用 面向对象的程序设计 第16页 2 特殊变量this 关于实例方法和实例数据成员的说明一个类所有的实例 对象 调用的成员方法在内存中只有一份拷贝 尽管在内存中可能有多个对象 而数据成员在类的每个对象所在内存中都存在着一份拷贝 this变量允许相同的实例方法为不同的对象工作 每当调用一个实例方法时 this变量将被设置成引用该实例方法的特定的类对象 方法的代码接着会与this所代表的对象的特定数据建立关联 面向对象的程序设计 第17页 3 关键字static 静态方法和静态变量是属于某一个类 而不属于类的对象 静态方法和静态变量的引用直接通过类名引用 在静态方法中不能调用非静态的方法和引用非静态的成员变量 反之 则可以 可以用类的对象obj去调用静态的方法method 如 obj method 面向对象的程序设计 第18页 4 常量的定义 使用关键字final定义常量 例如 finaldoublePI 3 1415926 作为一种约定 在定义常量时 通常采用大写形式 final常量可以在声明的同时赋初值 也可以在构造函数中赋初值 为了节省内存 我们通常将常量声明为静态的 static 面向对象的程序设计 第19页 5 类的继承 理解继承是理解面向对象程序设计的关键 在Java中 通过关键字extends继承一个已有的类 被继承的类称为父类 超类 基类 新的类称为子类 派生类 在Java中 不允许多继承 面向对象的程序设计 第20页 5 类的继承 面向对象的程序设计 第21页 6 方法的覆盖 在子类中定义一个与父类同名 返回类型 参数类型均相同一个方法 称为方法的覆盖覆盖发生在子类与父类之间 面向对象的程序设计 第22页 7 特殊变量super 特殊变量super 提供了对父类的访问 可以使用super访问父类被子类隐藏的变量或覆盖的方法 每个子类构造方法的第一条语句 都是隐含地调用super 如果父类没有这种形式的构造函数 那么在编译的时候就会报错 面向对象的程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年烟草四川公司招聘考试真题及答案
- 中级计量经济学知到智慧树答案
- 计算机三级(信息安全技术)考试题(含答案)
- 中外名建筑赏析知到智慧树答案
- 中西方文化比较知到智慧树答案
- 中西医结合基础思路研究与方法知到智慧树答案
- 中学生物实验教学知到智慧树答案
- 2025版水电安装工程合同履行与维护合同
- 2025年仓储配送一体化大数据分析服务合同
- 2025版土地储备项目合作开发中介服务合同
- 勉县一中小升初数学试卷
- 2025一建《建设工程经济》计算、时间、数字考点笔记
- 校园基孔肯雅热防控措施课件
- 第1课 中国古代政治制度的形成与发展 课件 统编版高中历史选择性必修1
- 药师考试历年真题综合测试试卷(含答案)
- 2025年村级防疫员考试模拟试题及答案
- 快餐公司门店设备夜间关闭管理制度
- 以童心为笔:基于儿童心理发展需求的小学校园公共活动空间设计
- 2025年度日语能力测试N4级试卷含答案与解析
- 生猪屠宰兽医卫生检验人员理论考试题库及答案
- 板带轧机刚度对热轧板形的影响
评论
0/150
提交评论