色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java的接口和抽象

王浩然1年前7瀏覽0評論

在Java中,接口和抽象是兩種常見的抽象類型。它們都可以用來定義一些規(guī)范或者協(xié)議,讓其它類來實(shí)現(xiàn)或繼承,以達(dá)到代碼復(fù)用的目的。

接口是一種純粹的抽象類型,它只定義了一些方法的簽名,沒有任何實(shí)現(xiàn)體。下面是一個(gè)例子:

public interface Drawable {
void draw();
}

在上面的例子中,我們定義了一個(gè)Drawable接口,它只有一個(gè)方法draw(),沒有實(shí)現(xiàn)。其它類如果想要實(shí)現(xiàn)Drawable接口,就必須要實(shí)現(xiàn)draw()方法,否則編譯會報(bào)錯(cuò)。

抽象則是在一定程度上已經(jīng)實(shí)現(xiàn)了,但仍然不是完整的類。我們通常會將一些通用的實(shí)現(xiàn)放到抽象類里面,讓子類來繼承并覆蓋其中的一些實(shí)現(xiàn)。下面是一個(gè)例子:

public abstract class Shape {
protected int x;
protected int y;
public Shape(int x, int y) {
this.x = x;
this.y = y;
}
public abstract void draw();
}

在上面的例子中,我們定義了一個(gè)Shape抽象類,它包含了x和y兩個(gè)成員變量,以及一個(gè)構(gòu)造函數(shù)和一個(gè)抽象方法draw()。Shape抽象類中并沒有實(shí)現(xiàn)draw()方法,因?yàn)槊總€(gè)Shape的子類都有可能有自己的繪制方式,所以由子類來實(shí)現(xiàn)這個(gè)方法。