編寫Java程序,演練匿名內部類應用

返回本章節

返回作業目錄


需求說明:

定義一個抽象類 Bird,創建使用匿名內部類的操作類Action。

實現思路:

定義抽象類Bird。在其中定義一個String類型的name屬性,一個返回類型是int的抽象方法fly(),以及getName()方法

定義操作類Action,在其中定義一個op()方法,該方法的形參爲Bird類型。

在main()方法中,實例化一個Action對象,並調用該對象的op()方法。op()方法的實參是一個繼承了Bird抽象類的匿名內部類對象,該內部類重寫了Bird類的getName()和fly()。

實現代碼:

public abstract class Bird {
	private String name;

    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }    
    public abstract int fly();
}

public class Action {
    public void op(Bird bird){
           System.out.println(bird.getName() + "能夠飛 " + bird.fly() + "米");
    }    
    public static void main(String[] args) {
           Action action = new Action();    	
    	action.op(new Bird() {            
            	      public int fly() {
                	             return 10000;
                         }            
                         public String getName() {
                                return "大雁";
                         }
         });
    }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章