music5.java.bak

来自「java编程思想的部分实现」· BAK 代码 · 共 93 行

BAK
93
字号
//c08 : Music5.java
import java.util.*;
interface Instrument
{
	int i=5;
	void play();
	String what();
	void adjust();
}
class Wind implements Instrument
{
	public void play()
	{
		System.out.println("Wind.play()");
	}
	public String what()
	{
		return "Wind";
	}
	public void adjust(){}
}
class Percussion implements Instrument
{
	public void play()
	{
		System.out.println("Percussion.play()");
	}
	public String what()
	{
		return "Percussion";
	}
	public void adjust(){}
}
class Stringed implements Instrument
{
	public void play()
	{
		System.out.println("Stringed.play()");
	}
	public String what()
	{
		return "Stringed";
	}
	public void adjust(){}
}
class Brass extends Wind 
{
	public void play()
	{
		System.out.println("Brass.play()");
	}
	public void adjust()
	{
		System.out.println("Brass.adjust()");
	}
}
class Woodwind extends Wind
{
	public void play()
	{
		System.out.println("Woodwind.play");
	}
	public String what()
	{
		return "Woodwind";
	}
}
public class Music5
{
	static void tune(Instrument i)
	{
		i.play();
	}
	static void tuneAll(Instrument[] e)
	{
		for(int i=0;i<e.length;i++)
		{
			tune(e[i]);
		}
	}
		public static void main(String [] args)
		{
			Instrument [] orchestra =new Instrument[5];
			int i=0;
			orchestra[i++]=new Wind();
			orchestra[i++]=new Percussion();
			orchestra[i++]=new Stringed();
			orchestra[i++]=new Brass();
			orchestra[i++]=new Woodwind();
			tuneAll(oechestra);
		}
	
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?