抽象方法 抽象類 介面 介面和抽象類的區別

2021-10-11 11:14:37 字數 1829 閱讀 8144

某個父類只知道子類因該包含什麼樣的方法,無法知道這些子類如何實現這些方法。抽象類包含該方法但沒有對該方法的具體實現。

有抽象方法的類只能被定義為抽象類,抽象類裡可以沒有抽象方法。

抽象方法和抽象類的規則:

public abstract class shape 

private string color;

public string getcolor()

public void setcolor(string color)

//定義乙個計算周長的抽象方法

public abstract double cal();

//定義乙個返回形狀的方法

public abstract string gettype();

//定義shape的構造器,該構造器並不是用於建立shape物件

//而是用於被子類呼叫

public shape(string color)

}

public class ******** extends shape

public void setsides(double a,double b,double c)

this.a=a;

this.b=b;

this.c=c;

}@override

public double cal()

@override

public string gettype()

}

public class circle extends shape 

public double getradius()

public void setradius(double radius)

@override

public double cal()

@override

public string gettype()

public static void main(string args)

}

抽象類的作用:抽象類是從多個具體的類中抽象出來的父類,為多個子類的通用模板,具有跟高層次的抽象,避免了子類設計的隨意性。

[修飾符]   inte***ce 介面名 extends 父介面1,父介面2...

零個到多個常量定義

零個到多個抽象方法定義

零個到多個內部類、介面、列舉定義...

零個到多個私有方法、預設方法或類定義方法...

public inte***ce output 

//在介面中定義類方法,需要使用static修飾

static string statictest()

//定義私有方法

static void foo()

//定義私有靜態方法

static void bar()

}

介面不能用於建立例項,但介面可以用於宣告引用型別變數。當使用介面來宣告引用型別變數時,這個引用型別變數必須引用到其實現類的物件。除此之外,介面的主要用途就是被實現類實現。介面用途如下:

public class printer implements output,product

} @override

public void getdata(string msg) else

} @override

public int getproducetime()

public static void main(string args)

}

介面,抽象類,抽象方法

一.抽象方法 1.用abstract修飾 2.沒有方法體 二.抽象類 1.含有抽象方法的類叫抽象類 抽象類無法建立物件,只有被繼承並且覆蓋重寫後 去掉抽象 才能使用 三.介面 1.抽象方法 2.常量,常量必須是final的,比如電源中引數不能夠改變 3.預設 方法公升級用 4.靜態方法和私有方法 介...

介面,抽象類和抽象方法

1.定義介面 介面使用 inte ce 關鍵字宣告,它與類的宣告類似。介面宣告預設 是 public 的。通常介面命名已i字母開頭。inte ce 介面名 2.介面繼承介面 多個介面用,號進行區分 inte ce 介面名 繼承的介面名 3.類實現介面 訪問修飾符 class 類名 介面名 4.乙個類...

抽象類,抽象方法和介面

抽象類 抽象類是一種模板模式,為所有子類提供乙個通用模板,子類可以在這個模板基礎上進行擴充套件。通過抽象類,可以避免子類設計的隨意性。通過抽象類,我們可以做到嚴格限制子類的設計,使子類之間更加通用。抽象類的要點 public abstract class animal class student e...