Java繼承,接口,抽象類習題練習

類的稱呼:
什麼是類
題目如圖:
接口與多態
解答:
圖二

public abstract class Top{ }
public class Tip extends Top { }

圖三

public abstract class Fee { }
public abstract class Fi  extends Fee {}

圖四

public interface Foo{ }
public class Bar implements Foo{}
public class Baz extends Bar{ }

圖五

public interface Zeta{ }
public interface Beta{ }
public class Alpha implements Zeta{}
public class Delta extends Alpha implements Beta{ } 
  • 如果不想讓某個類被初始化,就以abstract這個關鍵詞將它標記爲抽象類。
    public abstract class Employee { };
  • 抽象的類可以帶有抽象和非抽象的方法。
    public abstract void eat (); 抽象方法沒有方法體!直接以分號結束。如果你聲明出一個抽象方法,就必須將類也標記爲抽象的,你不能在非抽象類中擁有抽象方法。
    public double getSalary(){}
  • 如果類帶有抽象的方法,則此類必定標識爲抽象的。
  • 抽象的方法必須在具體的類中運行。
  • Java所有的類都是**Object(java.lang.Object)**直接或間接的子類。
  • 方法可以聲明**Object **的參數或返回類型。
  • 不管實際上所引用的對象是什麼類型,只有在引用變量的類型就是帶有某方法的類型時才能調用該方法。
  • Object引用變量在沒有類型轉換的情況下不能賦值給其他的類型,若堆上的對象類型與所要轉換的類型不兼容,則此轉換會在執行期產生異常。
    類型轉換的例子:Dog d = (Dog) x.getObject(aDog);
  • ArrayList取出的對象只能被Object引用,不然就要用類型轉換來改變。
  • Java不允許多重繼承,因爲那樣會有致命方塊的問題。
  • 接口就好像是100%純天然抽象類。
  • interface這個關鍵詞取代class來聲明接口。
  • 實現接口時使用implements這個關鍵詞。Dog implement Pet
  • class可以實現多個接口。
  • 實現某接口的類必須實現它所有的方法,因爲這些方法都是**public與abstract **的。
  • 要從子類調用父類的方法可以用super這個關鍵詞來引用。
    例如:super.RunReport( );
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章