當前位置:編程學習大全網 - 源碼下載 - java 用多態實現不同的樂器演奏不同的音樂,並打印輸出

java 用多態實現不同的樂器演奏不同的音樂,並打印輸出

/**

* 歌曲類

*/

public class Music {

public Music() {

super();

}

public Music(String song) {

super();

System.out.println("《"+song+"》");

System.out.println(".....多來米發所拉稀....");

}

}

/**

* 樂器接口,凡實現該接口的都遊演奏的功能

*/

public interface Instrument {

public Music musical(String song);

}

/**

* 管弦類樂器

*/

public class Orchestral implements Instrument {

public Music musical(String song) {

System.out.println("下面用管弦類樂器演奏 "+song);

return new Music(song);

}

}

/**

* 彈奏類樂器

*/

public class Spiccato implements Instrument {

public Music musical(String song) {

System.out.println("下面用彈奏類樂器彈奏 "+song);

return new Music(song);

}

}

/**

* 其他類型樂器

*/

public class Other implements Instrument {

String instrument;

public Other() {

super();

}

public Other(String instrument) {

this.instrument = instrument;

}

public Music musical(String song) {

System.out.println("用 "+instrument+" 演奏的 "+song);

return new Music(song);

}

public static void main(String[] args) {

Other other = new Other("古箏");

other.musical("高山流水");

}

}

/**

* 笛子

*/

public class Fife extends Orchestral {

public Fife(String song) {

super.musical(song);

System.out.println("這是用橫笛吹奏的 "+song);

}

}

/**

* 薩克斯

*/

public class Sax extends Orchestral {

public Sax(String song) {

super.musical(song);

System.out.println("這是用薩克斯演奏的 "+song);

}

}

/**

* 吉他

*/

public class Guitar extends Spiccato {

public Guitar(String song) {

super.musical(song);

System.out.println("這是吉他彈奏的");

}

}

/**

* 鋼琴

*/

public class Piano extends Spiccato {

public Piano() {

super();

}

public Piano(String song) {

super.musical(song);

System.out.println("這是在用鋼琴彈奏 "+song);

}

}

  • 上一篇:千千靜聽歌詞繡搜索歌詞為什麽總是連接服務器失敗?
  • 下一篇:怎麽還信用卡最好
  • copyright 2024編程學習大全網