java编写程序实现乐手弹奏乐器。乐手可以弹奏不同的乐器从而发出不同的声音。可以弹奏的乐器包括二胡、钢琴和琵琶。定义乐器类Instrument,包括方法makeSound() 。定义乐器类的子类
2018-09-08 14:43
2851 查看
编写程序实现乐手弹奏乐器。乐手可以弹奏不同的乐器从而发出不同的声音。可以弹奏的乐器包括二胡、钢琴和琵琶。
实现思路及关键代码
1)定义乐器类Instrument,包括方法makeSound()
2)定义乐器类的子类:二胡Erhu、钢琴Piano和小提琴Violin
3)定义乐手类Musician,可以弹奏各种乐器play(Instrument i)
4)定义测试类,给乐手不同的乐器让他弹奏
代码展示:
//父类-->乐器类Instrument public class Instrument { //弹奏的方法 public void makeSound(){ System.out.println(); } } //子类-->二胡类Erhu public class Erhu extends Instrument{ //弹奏的方法-->方法重写 public void makeSound(){ System.out.println("听我弹奏二胡,《二泉映月》、《拉骆驼》、《江河水》、《战马奔腾》..."); } } //子类-->钢琴类Piano public class Piano extends Instrument { //弹奏的方法-->方法重写 public void makeSound(){ System.out.println("听我弹奏钢琴,《梦中的婚礼》、《秋日私语》、《蓝色多瑙河》、《 命运交响曲》..."); } } //子类-->小提琴类Violin public class Violin extends Instrument { //弹奏的方法-->方法重写 public void makeSound(){ System.out.println("听我弹奏小提琴,《纪念曲》、《圣母颂》、《云雀》、《梁祝》..."); } } //乐手类Musician public class Musician { public void play(Instrument i){ i.makeSound(); } } //测试类Test public class Test { public static void main(String[] args) { Musician m=new Musician(); //创建乐手类对象 Instrument i1=new Erhu(); //创建二胡类对象 m.play(i1); System.out.println("========================================================"); Instrument i2=new Piano(); //创建钢琴类对象 m.play(i2); System.out.println("========================================================"); Instrument i3=new Violin(); //创建小提琴类对象 m.play(i3); } }
效果截图:
相关文章推荐
- Java实例 定义任务的一个发射小程序 实现Runnable接口并编写run()方法
- 编写一个单文档界面应用程序,该程序可以测试在鼠标左键按下时鼠标光标的位置是否处在某规定的矩形框内,如果不在该矩形内则计算机的扬声器会发出“叮”的声音,反之则会在用户区显示光标的位置。
- 在一个程序中需要用到全局变量(在多个class之间共享数据),请问如何定义具有这种功能的变量?或者是否有其他的方法解决多个class之间的数据共享(尽量简单实现)。 首先应该明确 Java中没有全局变
- [编写高质量代码:改善java程序的151个建议]建议67 不同的列表选择不同的遍历方法
- 1)编写Animal接口,接口中声明run()方法; 2)定义Bird类和Fish类实现Animal接口; 3)编写Bird类和Fish类的测试程序,并调用其中的run()方法
- 1)编写Animal接口,接口中声明run()方法; 2)定义Bird类和Fish类实现Animal接口; 3)编写Bird类和Fish类的测试程序,并调用其中的run()方法
- 在c++中可以调用java中的方法,从而实现java与c++的的交互。
- /*1)编写Animal接口,接口中声明run()方法; 2)定义Bird类和Fish类实现Animal接口; 3)编写Bird类和Fish类的测试程序,并调用其中的run()方法 */
- 编写一个Java应用程序,该程序包括3个类:定义一个学生类,Student有姓名,学号,选学的课程列表 ,定义一个课程类:课程名称,课程分数
- 1)编写Animal接口,接口中声明run()方法; 2)定义Bird类和Fish类实现Animal接口; 3)编写Bird类和Fish类的测试程序,并调用其中的run()方法
- 10_9_1编写代码,定义一个基类MyClass,其中包括虚礼方法GetString(),这个方法返回存储在受保护字段myString中的字符串,该字段可以通过只写公共属性ContainedStrin
- 1)编写Animal接口,接口中声明run()方法; 2)定义Bird类和Fish类实现Animal接口; 3)编写Bird类和Fish类的测试程序,并调用其中的run()方法
- [编写高质量代码:改善java程序的151个建议]建议67 不同的列表选择不同的遍历方法
- 接口的定义——默认加public abstract默认全局常量;与继承不同,子类可以同时实现多个接口;抽象类实现接口;接口继承接口
- 编写Animal接口,接口中声明run()方法; 2)定义Bird类和Fish类实现Animal接口; )编写Bird类和Fish类的测试程序,并调用其中的run()方法
- 编写Java程序,模拟简单的计算器。 定义名为Number的类,其中有两个整型数据成员n1和n2,应声明为私有。 编写构造方法,用于初始化n1和n2,再为该类定义 加(addition)、 减(su
- 2、按以下要求编写程序 (1) 编写Animal接口,接口中声明run() 方法 (2) 定义Bird类和Fish类实现Animal接口 (3) 编写Bird类和Fish类的测试程序,并调用其
- java编写程序实现键盘钢琴,运用键盘事件、鼠标事件
- 1)编写Animal接口,接口中声明run()方法; 2)定义Bird类和Fish类实现Animal接口; 3)编写Bird类和Fish类的测试程序,并调用其中的run()方法
- java实现GP数据库导入导出工具类,程序可以和gp在不同机器上