当前位置: 首页 > news >正文

电子商务网官方网站海外服务器 vps

电子商务网官方网站,海外服务器 vps,wordpress容易被收录吗,wordpress二维码插件实验项目二 抽象类、接口的定义与使用 Tips:"分享是快乐的源泉💧,在我的博客里,不仅有知识的海洋🌊,还有满满的正能量加持💪,快来和我一起分享这份快乐吧😊&…

实验项目二   抽象类、接口的定义与使用

Tips:"分享是快乐的源泉💧,在我的博客里,不仅有知识的海洋🌊,还有满满的正能量加持💪,快来和我一起分享这份快乐吧😊!

喜欢我的博客的话,记得点个红心❤️和小关小注哦!您的支持是我创作的动力!

一、实验目的

(1) 学会使用类的静态方法 ;

(2) 学习如何定义接口 ;

(3) 掌握接口的实现及其使用方式;

(4) 理解接口与抽象类的区别。

二、实验内容

  1. 定义传播媒体类Media为抽象类,其属性包括:id即书号或刊号,title即名称。方法包括:

抽象方法showInformation(),显示当前对象的属性值;

静态方法showType(),显示当前对象的类型,如“Book”或“Newspaper”。

类Book、类Newspaper都是Media的子类,Book类特有的属性包括:press即出版社,authors即作者。

在测试类中创建Book和Newspaper的对象,显示每个对象的类型,并显示每个对象的信息。

         2. 设计和实现一个 Soundable 接口 , 该接口具有发声功能 , 同时还能够调节声音大小。 Soundable 接口的这些功能将会由 3 种声音设备来具体实现 , 它们分别是收音机 Radio 、随身昕 Walkman 和手机Mobilephone 。最后还要设计一个应用程序类来使用这些实现了 Soundable 接口的声音设备类。程序运行时 , 先询问用户想听哪种设备 , 然后程序就会按照该设备的工作方式来发出声音。

三、实验原理

1、类的静态方法;

2、抽象类与接口的定义与使用。

四、实验环境

电脑主机酷睿i5、内存4G以上,操作系统Windows 7以上,开发工具eclipse。

五、实验步骤

1、

2、

3、

六、实验结果

    

七、实验分析

1、定义传播媒体类Media为抽象类,其属性包括:id即书号或刊号,title即名称。方法包括:

抽象方法showInformation(),显示当前对象的属性值;

静态方法showType(),显示当前对象的类型,如“Book”或“Newspaper”。

类Book、类Newspaper都是Media的子类,Book类特有的属性包括:press即出版社,authors即作者。

在测试类中创建Book和Newspaper的对象,显示每个对象的类型,并显示每个对象的信息。

第1题解答如下:

创建包并分类完毕:Media为抽象类,Book与Newspaper为子类,test03为测试类:

df2b805812a242be82739a18ef12da0f.png

抽象类Media代码:

8eb4832802e34b19b3c9502ad4710c6d.png

子类Book代码:

3be65099dbdd4332aceee5399d600c5d.png

子类Newspaper代码:

2e3faba75dba45b3922c67b3f48d4cd0.png

测试类test03代码

2f60a037696d47c39863bcab27bf56b5.png

测试结果显示:

b7b5199548bd46659f42ea1768082743.png

2、设计和实现一个 Soundable 接口 , 该接口具有发声功能 , 同时还能够调节声音大小。 Soundable 接口的这些功能将会由 3 种声音设备来具体实现 , 它们分别是收音机 Radio 、随身昕 Walkman 和手机Mobilephone 。最后还要设计一个应用程序类来使用这些实现了 Soundable 接口的声音设备类。程序运行时 , 先询问用户想听哪种设备 , 然后程序就会按照该设备的工作方式来发出声音。

第2题解答如下:

创建包并分类完毕:Soundable为接口,Radio,Walkman与Mobilephone为实现类,People为普通类,InterfaceTest为测试类:

5dcc9cbcd11945e0be70efc4281743f2.png

接口Soundable的代码:

f2ea74e298d0402c879f7be414b3b844.png

实现类Radio代码:

830f9ad5fdc34acb925dd253a9b5439f.png

实现类Walkman代码:

d3e1d825178843af92b79821e8269ea0.png

实现类Mobilephone代码:

72d9c0b93a574f3cbf6008574b050b88.png

普通类People代码:

7f4f21eb51ed46388ffa889fad6a769f.png

测试类InterfaceTest代码:

6434b8ce27f646d28397d613b6673ce3.png

运行结果显示:

adb9c8da740e4259ac5f329f7a5081c3.png

思考

  1. 请问在 InterfaceTest 类中 ,SoundDevice[] 数组是什么类型的 , 该数组为什么能存放 3 种不同的对象 Radio、Walkman 和 Mobilephone 呢 ?

答:SoundDevice[] 数组是接口类型,因为三个对象都实现了这个接口,因而可以调用实现了接口的实现类。

(2) 在程序中Soundable 是一个接口 , 那么该接口是否可以被实例化呢 ? 请在InterfaceTest 类的 main() 方法中加入以下语句试验一下 , 并分析结果。

Soundable    Sound=new Soundable(),

答:不能被实例化,因为Soundable不是一个类,只是一个接口。

(3) 现在假定要为程序增加一个闹钟类 Clock, 该类也实现 Soundable 接口 , 能够发出滴答声 , 请将以下的 Clock 类加入到 InterfaceTest.java 程序中 , 并在 InterfaceTest 类的 main() 方法中加入 SoundDevice[3]= new Clock(); 语句。

class Clock implements Soundable{

public void Stopsound(){

System.out.println(" 关闭闹钟 ");

}

public void Playsound(){

system.out.println(" 闹钟发出滴答声 ");

   }

}

修改之后 , 重新编译 InterfaceTest.java 并运行它 , 观察结果。

答:报错了,普通类需要实现所有接口的方法。

(4) 在第 (3) 小题中由于新加入的 Clock 类仅仅实现了 Soundable 接口的stopsound() 和 playsound() 方法 , 而 increaseVolume() 和 decreaseVolume() 方法没有实现 , 因此它实质上是一个抽象类 , 而抽象类是不能实例化的 , 所以导致编译错误。但是按照常理 , 闹钟的滴答声确实是不可以增大或减小的 , 那么如何解决这个问题呢 ? 现在请在 Clock 类中加入下面两个含 {} 空方法体的方法实现 , 再编译运行程序 , 看看会有什么变化。

public void increaseVolume(){}

public void decreaseVolume(){}

答:正确了,不会报错。

103ac9228b664d06bc4d75fc140c02d0.png

  1. 现在请模仿本实验的程序设计出一个自己的接口程序 , 要求先设计一个 moveable 可移动接口 , 然后分别设计 3 个类 , 即汽车 Car 、轮船 Ship 、飞机 Aircraft 来实现该接口 , 最后设计一个应用程序来使用它们。

解答如下:

1.创建包并分类完毕:Moveable为接口,Car,Ship与Aircraft为实现类,People为普通类,Test为测试类:

a20c3a3cf62b463e834a78fdc863cf3c.png

2.接口Moveable的代码:

0e3c8a0e886d4f11945f60596176639e.png

3.实现类Car代码:

97f41d965f994002b3f56dde6150b115.png

4.实现类Ship代码:

838749dc1cda47bab4c6bf1cf399cd0d.png

5.实现类Aircraft代码:

2387943d23a94e50a283f0d1e4b48442.png

6.普通类People代码:

6ac56d28137640bfa71e4b30ae07a0a0.png

7.测试类Test代码:

3e3e78acd83e4fda8fdb93d80d8e9c50.png

8.运行结果显示:

7bf17110f4ee496e963af34fa2e9f6fe.png

点评  接口的特点在于只定义能做什么 , 而不定义怎么去做。在本实验中 , 收音机 Radio, 随身听 Walkman 和手机 Mobilephone 分别以自己的方式实现了 Soundable 接口 , 当接口成为 Listen(Soundable s) 方法的形参时 , 任何实现了 Soundable 接口的对象都能成为它的实参 , 如果不用接口作形参 , 那就必须写 3 个不同的方法 , 即

listenRadio(Radio r),

    listenWalkman(Walkman w) ,

listenMobilephone(Mobilephone m)。

http://www.yayakq.cn/news/273210/

相关文章:

  • 专门做电子书的网站深圳市seo上词贵不贵
  • 简单的个人网站制作流程ps做网站设计稿
  • 官方网站免费建设东莞app定制开发公司
  • 模板网站没有源代码什么属于网页制作工具
  • 旅游类网站建设的结论个人网页设计代码模板
  • 浦江县做网站天津做艺术品的网站
  • 网站地图建设有什么用外汇交易网站建设
  • 做电影网站要多少钱中国农技推广网
  • 陇南做网站建立网站原理
  • 代账公司网站模板中国铁塔公司招聘网站
  • 租用服务器网站app 网站
  • 东莞住房和城乡建设厅网站电商网站建设基础教案
  • 西安网站开发制作网站访问量咋做
  • 网站源码建站视频rss 网站插件
  • 做网站沈阳做实验的网站
  • 莆田网站建设方案优化定制型网站制作哪家好
  • 北京网站建设降龙网络代理网页在线
  • 1688代加工官方网站免费logo图标在线制作
  • 网站做推广赚钱项目如何将图片生成网址
  • 百度经验网站建设网页设计师资格证查询官网
  • 济南天桥区网站建设公司wordpress滑块不显示
  • 网站建设与管理是干什么的网站怎么做才能被百度收录
  • 创意设计公司网站无锡做网站公司有哪些
  • 衡阳北京网站建设国网交流建设公司网站
  • 住房和建设部信息网站沧州做家装的公司网站
  • 社交网站开发流程app开发技术路线描述
  • 免费域名注册网站源码wordpress 屏蔽特定国家ip
  • 网站建设最新资讯简单的网页设计模板
  • 保定微网站 建设昆汀的室内设计案例
  • 济南网站建设有限公司小程序登录界面设计