- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 对象和类的进一步介绍 抽象数据类型 绝大多数程序设计语言都预定义了一些基本数据类型,并相应定义了对那些类型的实例执行的操作。 概述 比如,对整型、实型等数值类型,有加、减、乘、除等操作, 对逻辑类型,有逻辑与、逻辑或、逻辑非等操作。 对于用户自定义的复合数据类型,需要由程序员自己定义一些方法,对该类型的实例进行所需的操作。 抽象数据类型 有些编程语言改进了这种处理方式,允许数据类型说明和欲对该类型变量进行操作的代码说明之间有较紧密的联系。通常把数据类型和对其进行的操作聚集在一起构成一种抽象数据类型。 抽象数据类型 严格地说,抽象数据类型是指基于一个逻辑类型的数据类型以及这个类型上的一组操作。每一个操作由它的输入、输出定义。 示例 public class Date { private int day, month, year; Date ( int i, int j, int k) { day = i; month = j; year = k; } ? Date() { day = 1; month = 1; year = 1998; } ? Date (Date d) { day = d.day; month = d.month; year = d.year; } public Date tomorrow() { Date d = new Date(this); d.day++; if(d.dayd.daysInMonth()){ d.day = 1; d.month ++; if (d.month 12) { d.month = 1; d.year ++; } } return d; }} 抽象数据类型 在Java中把名为tomorrow的代码段叫做方法,也可以称为成员函数。 Java在数据和操作间建立了较严格的联系,即把方法与数据封装在一个类中。 抽象数据类型 Data d = new Date ( 20, 11, 1998); //已初始化的date对象 d.tomorrow();//tomorrow()方法作用于变量d 要访问Date类的域,可使用点操作符“.”:d.day //d所指的Date对象中的day域 定义方法 在Java中,方法定义的一般格式如下: 修饰符返回类型名字(参数列表)块 名字是方法名,它必须使用合法的标识符。 返回类型说明方法返回值的类型。如果方法不返回任何值,它应该声明为void。Java对待返回值的要求很严格,方法返回值必须与所说明的类型相匹配。 定义方法 修饰符段可以含几个不同的修饰符。 参数列表是传送给方法的参数表。表中各元素间以逗号分隔,每个元素由一个类型和一个标识符组成。 块表示方法体,是要实际执行的代码段。 示例1 void setName (String name) { this.name = name; } String getAddress() { return address; } 示例2 public class Date { private int day, month, year; Date ( int i, int j, int k) { day = i; month = j; year = k; } Date() { day = 1; month = 1; year = 1998; } Date ( Date d) { day = d.day; month = d.month; year = d.year; } public void printDate() { System.out.print(day+/+month+/ +year); } public Date tomorrow() { Date d = new Date(this); d.day++; if (d.day d.daysInMonth()) { d.day = 1; d.month ++; if (d.month 12) { d.month = 1; d.year ++; }} return d;} public int daysInMonth() { switch (month) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: return 31; case 4: case 6: case 9: case 11: return 30; default: if ( year % 100 != 0 year
您可能关注的文档
最近下载
- 2025江苏苏州张家港市长江保坍实业有限公司招聘1人笔试参考题库附答案解析.docx VIP
- 2025江苏苏州张家港市长江保坍实业有限公司招聘1人笔试备考试题及答案解析.docx VIP
- 2022年宁夏环保集团有限责任公司招聘考试题库及答案解析.docx VIP
- 2025江苏苏州张家港市长江保坍实业有限公司招聘1人笔试备考题库及答案解析.docx VIP
- 视频网站付费会员的调查报告.pdf VIP
- 2025江苏苏州张家港市长江保坍实业有限公司招聘1人笔试历年参考题库附带答案详解.docx VIP
- 江门市城乡规划技术标准与准则(2019年最终稿).pdf
- 灭火器使用培训PPT课件.pptx VIP
- 《信息安全技术 人工智能计算平台安全框架-编制说明》.pdf VIP
- 2024年宁夏环保集团有限责任公司人员招聘笔试备考题库及答案解析.docx VIP
文档评论(0)