




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
类与对象应用单元四类和对象概述Java类构造方法目录CONTENTS123对象初始化过程重载45继承多态
78抽象和封装
6抽象类接口
1011包和访问控制
9目录CONTENTS4.11.1接口的概念如果抽象类中的方法都是抽象方法,那么由这些抽象方法组成的特殊的抽象类就是接口。抽象类更侧重于对相似的类进行抽象,形成抽象的父类以供子类继承使用,而接口往往在程序设计的时候,定义模块与模块之间应满足的规约,使各模块之间能协调工作。Java接口定义的语法形式如下:[修饰符]interface接口名[extends][接口列表]{接口体}类实现接口的语法形式如下:[类修饰符]class类名implements接口列表{类体}4.11.2接口的使用(1)定义电子邮件接口。publicinterfaceEmailInterface{//设置发信者邮箱publicvoidsetSendAdd(Stringadd);//设置收信者邮箱publicvoidsetReceiveAdd(Stringadd);//设置邮件主题publicvoidsetEmailTitle(Stringtitle);//设置邮件内容publicvoidwriteEmail(Stringemail);}(2)定义邮箱类,实现Emaillnterface接口。注意,在实现接口中抽象方法的同时,邮箱类本身还有一个showEmail()方法。importjava.util.Scanner;//定义Email,实现Email接口publicclassEmailimplementsEmailInterface{StringsendAdd=""; //发信者邮箱StringreceiveAdd=""; //收信者邮箱StringemailTitle=""; //邮件主题Stringemail=""; //邮件内容//实现设置发信者邮箱publicvoidsetSendAdd(Stringadd){this.sendAdd=add;}//实现设置收信者邮箱publicvoidsetReceiveAdd(Stringadd){this.receiveAdd=add;}//实现设置邮件主题publicvoidsetEmailTitle(Stringtitle){this.emailTitle=title;}//实现设置邮件内容publicvoidwriteEmail(Stringemail){this.email=email;}//显示邮件全部信息publicvoidshowEmail(){System.out.println("***显示电子邮件内容***");System.out.println("发信者邮箱:"+sendAdd);System.out.println("收信者邮箱:"+receiveAdd);System.out.println("邮件主题:"+emailTitle);System.out.println("邮件内容:"+email);}}(3)定义一个邮件作者类。邮件作者类中含静态方法writeEmail(EmailInterfaceemail),用于写邮件,具体代码如下。classEmailWriter{//定义写邮件的静态方法,形参是EmailInterface接口publicstaticvoidwriteEmail(EmailInterfaceemail){Scannerinput=newScanner(System.in);System.out.print("请输入发信者邮箝:");email.setSendAdd(input.next());System.out.print("请输入收信者邮箱:");email.setReceiveAdd(input.next());System.out.print("请输入邮件主题:");email.setEmailTitle(input.next());System.out.print("请输入邮件内容:");email.writeEmail(input.next());//email.showEmail();//编译无法通过,因为形参email是EmailInterface接口,没有此方法}}实现电子邮件。4.11.2接口的使用(4)编写测试类。测试类代码首先创建并实例化出一个实现了电子邮件接口的对象email,然后调用EmailWriter类的静态方法writeEmail写邮件,最后将email对象强制类型转换成Email对象(不提倡此做法),调用Email类的showEmail()方法。publicclassTestInterface2{publicstaticvoidmain(String[]args){//创建并实例化一个实现了电子邮件接口的对象emailEmailInterfaceemail=newEmail();//调用EmailWriter类的静态方法writeEmail写邮件EmailWriter.writeEmail(email);//强制类型转换,调用Email类的showEmail()方法(不是接口方法)((Email)email).showEmail();}
}测试案例运行结果4.11.3接口的特征(1)接口中不允许有实体方法,但是JDK8及以后版本增加了default方法和static方法,这两种方法完全可以有方法体。(2)接口中可以有
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 初中学业水平考试实验操作中常见设备问题及解决方案
- 江苏省大丰区万盈镇沈灶初级中学2024年数学七上期末调研模拟试题含解析
- 广东省广州白云广雅实验学校2025届七上数学期末考试试题含解析
- 四川省雅安市雨城区雅安中学2024年物理八上期末学业质量监测模拟试题含解析
- 车辆买卖合同书及车辆改装及年检及保险协议
- 采石厂矿产资源开采权终止合同
- 游戏开发与编程技巧
- 医院洁净手术室安全隐患自查手册
- 行业发展趋势预测与未来展望
- 智能穿戴设备技术的发展趋势及市场分析
- 品管圈PDCA提高手卫生依从性
- 石子加工合同2024年
- 职业本科《大学英语》课程标准
- 2024年华东师大版七年级数学下册单元测试题及参考答案
- 民航旅客运输基础知识考核试题及答案
- 2024年工业废水处理工(技师)技能鉴定考试题库-下(多选、判断题)
- 五年级期末家长会含内容模板
- 肺功能进修汇报护理课件
- JTGT F20-2015 公路路面基层施工技术细则
- 长春高新:2023年年度审计报告
- 第五章 中国特色社会主义理论体系的形成发展(一)
评论
0/150
提交评论