本帖最后由 iBadboy 于 2013-7-25 21:38 编辑
定义一个乐器(Instrument)接口,其中有抽象方法
void play();
在InstrumentTest类中,定义一个方法
void playInstrument(Instrument ins);
并在该类的main方法中调用该方法。
要求:分别使用下列内部类完成此题。
成员内部类
局部内部类
匿名类我写的成员内部类:- interface Instrument
- {
- public void play();
- }
- class InstrumentTest
- {
- static class Instrument1 implements Instrument
- {
- public void play()
- {
- System.out.println("开始演奏");
- }
- }
- void playInstrument(Instrument ins)//这里可以带参
- {
- ins.play();
- }
- public static void main(String[] args)
- {
- InstrumentTest i=new InstrumentTest();
- i.playInstrument(new Instrument1());
- }
- }
复制代码 局部内部类:- interface Instrument
- {
- public void play();
- }
- class InstrumentTest
- {
-
- void playInstrument()//这里带参的话要传什么?还是不用带?
- {
- class Instrument1 implements Instrument
- {
- public void play()
- {
- System.out.println("开始演奏");
- }
- }
- new Instrument1().play();
- }
- public static void main(String[] args)
- {
- InstrumentTest i=new InstrumentTest();
- i.playInstrument();
- }
- }
复制代码 匿名内部类:- interface Instrument
- {
- public void play();
- }
- class InstrumentTest
- {
-
- void playInstrument()//这里带参数的话怎么写?还是不用就行?
- {
- new Instrument()
- {
- public void play()
- {
- System.out.println("开始演奏");
- }
- }.play();
- }
- public static void main(String[] args)
- {
- InstrumentTest i=new InstrumentTest();
- i.playInstrument();
- }
- }
复制代码 我这样写对吗?题目要求中定义一个带参数的方法 void playInstrument(Instrument ins);,可是只有第一个可以带参,下面两个带上参数,在这里i.playInstrument();不知道该传什么?
|