1,乙個類繼承了乙個抽象類,需要實現父類的全部抽象方法或者宣告為抽象類
2,抽象類方法的作用:
1)限制子類必須實現該方法,既然子類實現了該類的抽象方法,那麼通過抽象父類就一定可以呼叫該方法(執行時多型)
2)解決編譯時多型
3,如果乙個類中包含抽象方法(沒有方法體),那麼這個類必須宣告成抽象類。 抽象類不能例項化(new物件)。
4,抽象類是當作多型中的父類來用的。
下面是乙個具體的例子,可以詳細斟酌
簡單來講就是closefigure是乙個抽象類方法,rectangle和circle兩個類繼承了它,而rectangle類為了限制用它的類需要重寫,就寫成了abstract,但是它並沒有抽象方法,rectangle2類繼承了rectangle,如果它重寫aa()方法,closefigureex執行類就會呼叫重寫的方法,否則就呼叫原來預設的aa()方法
/*
* 抽象方法的作用:
* 1.限制子類必須實現該方法。既然子類一定實現了該抽象方法,
* 那麼通過抽象父類的引用就一定可以呼叫該方法 ---執行時
* 2.解決編譯時多型。
* */
public abstract class closefigure
//抽象方法 用關鍵字:abstract
public abstract double area();
public abstract double perimeter();
public abstract void bb();
public void print()
//最終方法,子類不能覆蓋
public final void cc()
}
public class circle extends closefigure
public circle()
public int getr()
public void setr(int r)
@override
public string tostring()
@override
public double area()
@override
public double perimeter()
@override
public void bb()
}
/*
* 1. 乙個類繼承了抽象父類,那麼父類中的抽象方法要全部把它實現,
* 否則只能宣告成抽象類。
* 2. 如果乙個類中包含抽象方法(沒有方法體),那麼這個類必須宣告成抽象類。
* 抽象類不能例項化(new物件)。
* 3. 抽象類是當作多型中的父類來用的。
*/public abstract class rectangle extends closefigure
/*** 如果子類要實現***功能如從配置檔案中讀取字型,請覆蓋該方法
*/public void aa()
public rectangle()
public int getwidth()
public void setwidth(int width)
public int getheight()
public void setheight(int height)
@override
public string tostring()
public double area()
public double perimeter()
public void bb()
}
package hncu.cn.basecode.day008.para3;
public class rectangle2 extends rectangle
public rectangle2(int width, int height)
// @override
// public void aa()
}
package hncu.cn.basecode.day008.para3;
public class closefigureex
}
抽象類 抽象方法知識點
抽象類就是不能使用new方法進行例項化的類,即沒有具體例項物件的類。抽象類有點類似 模板 的作用,目的是根據其格式來建立和修改新的類。物件不能由抽象類直接建立,只可以通過抽象類派生出新的子類,再由其子類來建立物件。抽象方法就是以abstract修飾的方法,這種方法只宣告返回的資料型別 方法名稱和所需...
有關抽象類的知識點
抽象類 乙個類不知道他的子類的功能要怎麼實現,只是定義在那裡供子類自己實現 通過abstract來修飾這樣的類 作用 父類對子類有乙個約束和規定 子類能夠繼承現成的功能方法名 抽象方法 乙個方法用abstract修飾變成抽象方法,不能有方法體 特點 1.抽象類不能夠例項化物件,所以需要子類實現他,用...
php中抽象類和方法知識點
1.定義為抽象的類不能被例項化,2.任何乙個類如果它裡面至少有乙個方法是抽象的那麼這個方法也必須宣告為抽象的。3.子類繼承乙個抽象父類時,子類必須定義父類中的所有的抽象方法,而且訪問控制符必須和父類一樣 或者更為寬鬆 4.被定義的抽象方法只是宣告了其呼叫方式 引數 不能具體的功能實現 錯誤的,因為類...