抽象方法

標籤: 暫無標籤

24

更新時間: 2013-12-04

廣告

簡介

在面向對象編程語言中抽象方法指一些只有方法聲明,而沒有具體方法體的方法。抽象方法一般存在於抽象類或介面中。
java中


抽象方法:
java中的抽象方法就是以abstract修飾的方法,這種方法只聲明返回的數據類型、方法名稱和所需的參數,沒有方法體,也就是說抽象方法只需要聲明而不需要實現。
抽象方法與抽象類:
當一個方法為抽象方法時,意味著這個方法必須被子類的方法所重寫,否則其子類的該方法仍然是abstract的,而這個子類也必須是抽象的,即聲明為abstract。abstract抽象類不能用new實例化對象,abstract方法只允許聲明不能實現。如果一個類中含有abstract方法,那麼這個類必須用abstract來修飾,當然abstract類也可以沒有abstract方法。 一個抽象類裡面沒有一個抽象方法可用來禁止產生這種類的對象。(摘自百度文庫:java抽象類和方法,作者:余書慧先生)
抽象方法與介面:
在interface中所有的方法都是public abstract的,即使你沒有申明它是public abstract的。在interface中所有的數據成員都是public static final的,即使你沒有申明.但不能是blank final 在編譯時候確定的。在Java中,interface的地位和class是一樣的。實現interface的類,其interface中所有的方法必須被「實現」,否則這個類成為一個抽象類。Interface可以從多個interface得到繼承,但是不能繼承類。一個類可以實現多個interface。(摘自CSDN:抽象類,抽象方法和interface,作者:PeakLui)
C++中

廣告


純虛函數和抽象類:
含有純虛函數的類是抽象類,不能生成對象,只能派生。他派生的類的純虛函數沒有被改寫,那麼,它的派生類還是個抽象類。 定義純虛函數就是為了讓基類不可實例化化,因為實例化這樣的抽象數據結構本身並沒有意義.或者給出實現也沒有意義 一. 純虛函數 在許多情況下,在基類中不能給出有意義的虛函數定義,這時可以把它說明成純虛函數,把它的定義留給派生類來做。定義純虛函數的一般形式為: class 類名{ virtual 返回值類型 函數名(參數表)= 0; // 後面的"= 0"是必須的,否則,就成虛函數了 }; 純虛函數是一個在基類中說明的虛函數,它在基類中沒有定義,要求任何派生類都定義自己的版本。純虛函數為各派生類提供一個公共界面。 從基類繼承來的純虛函數,在派生類中仍是虛函數。 二. 抽象類 1. 如果一個類中至少有一個純虛函數,那麼這個類被稱為抽象類(abstract class)。 抽象類中不僅包括純虛函數,也可包括虛函數。抽象類中的純虛函數可能是在抽象類中定義的,也可能是從它的抽象基類中繼承下來且重定義的。 2. 抽象類特點,即抽象類必須用作派生其他類的基類,而不能用於直接創建對象實例。 一個抽象類不可以用來創建對象,只能用來為派生類提供一個介面規範,派生類中必須重載基類中的純虛函數,否則它仍將被看作一個抽象類。 3. 在effective c++上中提到,純虛函數可以被實現(定義),但是,不能創建對象實例,這也體現了抽象類的概念。(摘自:百度文庫,作者:dingxia0532)
PHP中


抽象方法指沒有方法體的方法,具體就是在方法聲明的時候沒有 {} 括弧以及其中的內容,而是直接在聲明時在方法名后加上分號結束。(摘自:http://www.5idev.com/p-php_class_abstract.shtml)
C#中


抽象方法具有以下特性:
1、抽象方法是隱式的 virtual 方法。
2、只允許在抽象類中使用抽象方法聲明。
3、因為抽象方法聲明不提供實實現,所以沒有方法體;方法聲明只是以一個分號結束,並且在簽名后沒有大括弧 ({ })。例如: public abstract void MyMethod();
4、抽象類必須為所有介面成員提供實現。
有關抽象類和抽象方法的問題:
a. 一個抽象類可以同時包含抽象方法和非抽象方法。
b. 抽象方法的目的在於指定派生類必須實現與這一方法關聯的行為。
c. 抽象方法只在派生類中真正實現,這表明抽象方法只存放函數原型(方法的返回類型,使用的名稱及參數),而不涉及主體代碼。
d 如果父類被聲明為抽象類,並存在未實現的抽象方法,那麼子類就必須實現父類中所有的abstract成員,除非該類也是抽象的。(摘自:CSDN,上傳者:odp_denden)
數學中抽象方法是


指抽取出同類數學對象的共同的、本質的屬性或特徵,捨棄其他非本質的屬性或特徵的思維過程。即把研究對象或問題中抽取數量關係或空間形式而捨棄其它屬性對其進行考察的思維方法。
幾種常用的抽象方法:
1. 等價抽象
在思維中把同類研究對象的共同屬性取出來而捨去其他非共同的屬性。
2. 理想化抽象
是指通過抽象得到的數學概念和性質,並非就是客觀事物本身存在的東西,而是從實際事物分離的經過思維加工得來的,甚至是假想出來的.
3. 可能性抽象

廣告

廣告