书签 分享 收藏 举报 版权申诉 / 10
上传文档赚钱

类型Java程序设计资料:单元08 接口.doc

  • 上传人(卖家):罗嗣辉
  • 文档编号:2047617
  • 上传时间:2022-01-21
  • 格式:DOC
  • 页数:10
  • 大小:5.53MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《Java程序设计资料:单元08 接口.doc》由用户(罗嗣辉)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    Java程序设计资料:单元08 接口 Java 程序设计 资料 单元 08
    资源描述:

    1、单 08 接口单元目标 掌握 Java 接口的概念; 理解面向接口编程的思想; 掌握接口的多态技术。学习任务任务描述电脑主板上的USB接口有严格的规范,U盘、移动硬盘的内部结构不相同,每种盘的容量也不同,但U盘、移动硬盘都遵守了USB接口的规范,所以,在使用USB接口时,可以将U盘、移动硬盘插入任意一个USB接口,而不用担心哪个USB接口是专门插哪个盘。请编写程序,模拟使用USB接口的过程。运行结果知识准备8.1 Java 接口去购买 USB 电脑鼠标的时候,不需要问电脑配件的商家 USB 鼠标是什么型号的,也不需要询问是满足什么要求,一般情况下买回来都可以直接使用。其原因就是 USB 接口是

    2、统一的,都实现了鼠标的基本功能,可以说是鼠标的一种规范。所有的厂家都会按照这个规范,来制造 USB 接口的鼠标。这个规范说明制作该 USB 类型的鼠标应该做些什么,但并不说明如何做。2.16.1 接口的概念Java 程序设计中的接口接口(Interface)也是一种规范,是用来组织应用程序中的类,并调节它们的相互关系。接口是由常量和抽象方法组成的特殊类,是对模拟 USB 接口程序设计模拟 USB 接口程序设计抽象类的进一步抽象,形成了一个属性和行为的介绍集合,该集合通常代表了一组功能的实现。【提 示】在最早期的面向对象语言中不是使用 interface 关键字,而是使用 protocal。从这

    3、个词汇中可以看出接口最核心的意义是一个协议, 一个规定了一组功能的协议。 既然有协议的意思, 那么协议中将要说明需要遵守的条约, 相当于抽象方法。然而协议中一般不去理会到底如何实现条约方式, 这进一步说明了使用抽象方法的意义。Java 不支持多继承性,即一个类只能有一个父类。单继承性使得 Java 简单,易于管理程序。为了克服单继承的缺点,Java 使用了接口,一个类可以实现多个接口。2.16.2 接口的声明publicinterface接口名接口名 extends 接口接口 1,接口,接口 2 publicstaticfinal 数据类型数据类型 常量名常量名=常量值;常量值;publics

    4、taticabstract 返回值返回值 抽象方法名(参数列表抽象方法名(参数列表) ;由接口的声明的语法格式看出,接口是由常量和抽象方法组成的特殊类。注解:1. 接口的访问修饰符只有 public 一个。2. 接口可以被继承,它将继承父接口中的所有方法和常量。3. 接口体只包含两部分,一是常量;而是抽象方法。4. 接口中的常量必须赋值, 并且接口中的属性都被默认为是 final 来修饰的常量。5. 接口中的所有的方法都必须是抽象方法,抽象方法不需要使用 abstract关键字声明,直接默认为是抽象的。2.16.3 接口的实现和使用既然接口里只有抽象方法,它只要声明而不用定义处理方式,于是自然

    5、可以联想到接口也没有办法像一般类一样,再用它来创建对象。利用接口打造新的类的过程,称之为接口的实现接口的实现(implementation) ,同时实现了接口的类称之为接接口实现类口实现类。接口实现格式如下:class 类名称类名称 implements 接口接口 A,接口接口 B / 接口的实现接口的实现【实例2-18】接口实现程序设计interface A / 定义接口 Apublic String name = 张三 ;/ 定义全局常量public void print() ;/ 定义抽象方法interface B/ 定义接口 Bpublic void say() ;/ 定义抽象方法cl

    6、ass C implements A,B/ 子类同时实现两个接口public void say() / 覆写 B 接口中的抽象方法System.out.println(Hello!);public void print() / 覆写 A 接口中的抽象方法System.out.println(姓名: + name);接口的使用与类的使用有些不同。类会直接使用 new 关键字来构建一个类的实例进行应用,而接口只能被它的实现类进行进一步的实现才能发挥作用。8.2 接口与多态多态是面向对象编程思想的重要体现,它是建立在继承关系存在基础上的。接口与它的实现类之间存在实现关系,同时也就具有继承关系。因此接

    7、口可以像父类子类一样使用多态技术, 其中接口回调就是多态技术的体现。 接口回调是指:可以将接口实现类的对象赋给该接口声明的接口变量中, 那么该接口变量就可以调用接口实现类对象中的方法。不同的类在使用同一接口时,可能具有不同的功能体现, 即接口实现类的方法体不必相同, 因此, 接口回调可能产生不同的行为。模拟 USB 接口程序设计【实例 2-19】接口回调的例子interface ShowMessage void showTradeMark();class TV implements ShowMessage public void showTradeMark() System.out.print

    8、ln(我是电视机);class PC implements ShowMessage public void showTradeMark() System.out.println(我是电脑);public class TestExample public static void main(String args)ShowMessage sm; / 声明接口变量。sm = new TV(); / 实现类对象赋值接口变量sm.showTradeMark(); / 接口回调。sm = new PC(); / 接口变量中存放对象的引用。sm.showTradeMark(); / 接口回调。8.3 面向接

    9、口编程的步骤接口体现了规范与分离的设计原则,可以很好地降低程序各模块之间的耦合度,提高系统的可扩展性,可维护性。开发系统时,主体构架使用接口来构成系统的骨架,这样就可以通过更换接口的实现类来更换系统的实现。这就是面向接口编程的思想。【实例 2-20】有一打印中心,既有黑白打印机,也有彩色打印机,在打印时,使用不同的打印机,打印也就不同。采用面向接口编程的思想编程。1. 抽象出 Java 接口分析:黑白、彩色打印机都存在一个共同的方法特征:print;黑白、彩色打印机对 print 方法有各自不同的实现。结论:抽象出 Java 接口 PrinterFace,在其中定义方法 print。模拟 US

    10、B 接口程序设计模拟 USB 接口程序设计具体实现:public interface PrinterFace /打印机接口public void print(String content);public interface Printer /打印社的打印接口public String detail();2. 实现 Java 接口分析:已经抽象出 Java 接口 PrinterFace,并在其中定义了 print 方法黑白、彩色打印机对 print 方法有各自不同的实现。结论:黑白、彩色打印机都实现 PrinterFace 接口,各自实现 print 方法。具体实现:public class B

    11、lackPrinter implements PrinterFace public void print(String content) System.out.println(黑白打印:);System.out.println(content);public class ColorPrinter implements PrinterFacepublic void print(String content) System.out.println(彩色打印:);System.out.println(content);3. 使用 Java 接口分析:主体构架使用接口, 让接口构成系统的骨架。结论:更

    12、换实现接口的类就可以更换系统的实现。具体实现:public class PrinterCentre implements Printer private PrinterFace printerface;/打印机接口public void setPrinter(PrinterFace pf) this. printerface = pf;public String detail() 模拟 USB 接口程序设计模拟 USB 接口程序设计return 这里是打印中心;public void printph(Printer pf)printerface.print(pf.detail(); / pri

    13、nterface接口打印Printer接口信息public class Main public static void main(String args) PrinterCentre pc=new PrinterCentre();/创建打印中心pc.setPrinter(new BlackPrinter();/配备黑色打印机pc.printph(pc);/打印pc.setPrinter(new ColorPrinter();/配备彩色打印机pc.printph(pc);/打印程序运行结果如下:黑白打印:这里是打印中心彩色打印:这里是打印中心8.4 接口中常量的使用常量是一种标识符,它的值在运行

    14、期间恒定不变。常量标识符在程序中只能被引用,而不能被重新赋值。在 Java 接口中声明的变量在编译时会自动加上static final 的修饰符,即声明为常量,因而 Java 接口通常是存放常量的最佳地点。下面通过代码来演示接口里的常量。【实例 2-21】接口中的常量程序设计interface Cons / 定义接口final String name = this is my name;class Const implements Cons public class TestInterfaceConst 模拟 USB 接口程序设计public static void main(String s

    15、) Const cons = new Const();String name = Cons.name;System.out.println(name);String n = cons.name;System.out.println(n);程序运行结果如下:this is my namethis is my name从上面实例中可以看出,接口内定义的所有属性都是 public static 的。方法都是 public abstract 的。任务实施1实施思路USB 接口可以使用 U 盘、移动硬盘,完成插入、启动、停止的功能。当 U盘或移动硬盘插入 USB 接口时,它们的表现是不一样的。作为 US

    16、B 接口的接口,有两个抽象方法,但无法实现具体的功能。这些功能留在 U 盘或移动硬盘实现类中去完成。 打开 Eclipse,定义一个 USB 接口得到接口的框架; 在接口中进行抽象方法声明 编写测试类进行测试。2程序代码public interface USBInterface /这是Java接口,相当于主板上的USB接口的规范public void start();public void Conn();public void stop();public class MouseInterfaceimplements USBInterfacepublic void start()/实现接口的抽象

    17、方法System.out.println(鼠标插入,开始使用);模拟 USB 接口程序设计public void Conn()System.out.println(鼠标已插入,使用中);public void stop()/实现接口的抽象方法,移动硬盘有自己的功能System.out.println(鼠标退出工作);public class MovingDisk implements USBInterfacepublic void start()/实现接口的抽象方法,移动硬盘有自己的功能System.out.println(移动存储设备插入,开始使用);public void Conn()Sy

    18、stem.out.println(移动存储设备已插入,使用中);public void stop()/实现接口的抽象方法,移动硬盘有自己的功能System.out.println(移动存储设备退出工作);public class Keyboard implements USBInterfacepublic void start()/实现接口的抽象方法,移动硬盘有自己的功能System.out.println(键盘插入,开始使用);public void Conn()System.out.println(键盘已插入,使用中);public void stop()/实现接口的抽象方法,移动硬盘有自

    19、己的功能System.out.println(键盘退出工作);public class TestUsbInterface public static void main(String args) USBInterface usb1 = new MovingDisk();/将移动硬盘插入USB接口1USBInterface usb2 = new MouseInterface();/将鼠标插入USB接口2USBInterface usb3 = new Keyboard(); /将键盘插入USB接口2usb1.start();usb1.Conn();usb2.start();usb2.Conn();

    20、usb3.start();usb3.Conn();usb1.stop();usb2.stop();usb3.stop();任务拓展增加主板类,再修改 UseUSB 类,将 USB 接口安装在主板上,然后在UseUSB 类中将移动硬盘插入到主板的 USB 接口中。class MainBoardpublic void useUSB(USBInterfaceusb)/插入符合USB接口规范的盘usb.start();usb. Conn();usb.stop();public class UseUSB public static void main(String args) MainBoard mainBoard=new MainBoard();USBInterfaceusb1=new MovingDisk(); /在USB接口1上插入移动硬盘mainBoard. useUSB (usb1);任务实训1.实训目的模拟 USB 接口程序设计 掌握 Java 接口的定义、实现与使用; 掌握 Java 接口与多态的关系; 掌握面向接口编程的思想; 掌握接口中常量的使用。2.实训内容设计几何图形(Shape) 、矩形(Rectangle) 、圆形(Circle) 、正方形(Square) ,能够利用接口和多态性计算几何图形的面积和周长,并显示出来。模拟 USB 接口程序设计

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:Java程序设计资料:单元08 接口.doc
    链接地址:https://www.163wenku.com/p-2047617.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库