final關鍵字 抽象類與抽象方法 介面

2021-09-24 22:23:02 字數 2459 閱讀 7426

如果變數用static final修飾,全域性常量。

1、abstract修飾類:抽象類

(1)、不可被實力化,就意味著它不能夠建立物件;(2)、抽象類有構造器(凡是類都有構造器);(3)、抽象方法所在的類一定是抽象類。反之,抽象類中可以沒有抽象方法。

當我們設計乙個類時,不需要建立此類的例項的時候,就可以考慮將其設定為抽象的,由其子類實現這個類的抽象方法。

抽象方法沒有方法體,由其子類實現。

2、abstract修飾方法:抽象方法

(1)、格式:沒有方法體,也沒有。如:public abstract void eat();

(2)、抽象方法只保留方法的功能,而具體的執行,交給繼承抽象類的子類,由子類重寫此抽象方法;(3)、若子類繼承抽象類,並重寫了所有的抽象方法,則此類是乙個」實體類」,即可以例項化;(4)、若子類繼承抽象類,沒有重寫所有的抽象方法,意味著此類中仍有抽象方法,則此類必須宣告為抽象的。

3、抽象方法的使用練習:

//一般員工

class commonemployee extends employee

}//管理者

class manager extends employee

public void setbonus(double bonus)

public void work()

}abstract class employee

public void setname(string name)

public int getid()

public void setid(int id)

public double getsalary()

public void setsalary(double salary)

}public class testemployee

}4、抽象類與抽象方法的使用:

子類不能重寫宣告為private的方法。

介面是定義的一種功能;inte***ce關鍵字表明是乙個介面,定義的是乙個功能。這些功能也可以被類使用,表明的是此介面與這些類發生的關係。

implements表明類實現介面,實現介面以後這些類就能夠包含有了介面中的功能。

* 介面

(inte***ce)

是與類並行的乙個概念

* 1、介面可以看作是乙個特殊的抽象類

,是常量與抽象方法的乙個集合。不能包含變數、一般的方法。

* 2、介面是沒有構造器的。

* 3、介面定義的就是一種功能。此功能只可以被類所實現

(implements)

* 4、實現介面的類

,必須要重寫其中所有的抽象方法

,方可例項化。若沒有重寫所有的抽象方法

,則此類仍為乙個抽象類。

* 5、類可以實現多個介面

,但只可以繼承乙個父類。

* 6、介面與介面之間是繼承的關係。而且介面之間可以多繼承。

package inte***ce00;

/* * 介面(inte***ce)是與類並行的乙個概念

* 1、介面可以看作是乙個特殊的抽象類,是常量與抽象方法的乙個集合。不能包含變數、一般的方法。

* 2、介面是沒有構造器的。

* 3、介面定義的就是一種功能。此功能只可以被類所實現(implements)

* 4、實現介面的類,必須要重寫其中所有的抽象方法,方可例項化。若沒有重寫所有的抽象方法,則此類仍為乙個抽象類。

* 5、類可以實現多個介面,但只可以繼承乙個父類。

* 6、介面與介面之間是繼承的關係。而且介面之間可以多繼承。

抽象類及final關鍵字。

一 抽象類 1.用abstract關鍵字來修飾乙個類時,這個類叫做抽象類 用abstract來修飾乙個方法時,該方法叫做抽象方法。2.含有抽象方法的類必須被宣告為抽象類,抽象類必須被繼承,抽象方法必須被重寫。3.抽象類不能被例項化。簡單說就是不能被new出來 4.抽象方法只需宣告,而不需要被實現。二...

final關鍵字 抽象類 介面 JAVA

final 關鍵字 抽象類 抽象方法 宣告而未被實現的方法,抽象方法必須使用abstract關鍵字申明 抽象類 包含乙個抽象方法的類就是抽象類 抽象類被子類整合,子類 如果不是抽象類 必須重寫抽象類中所有的抽象方法 定義格式 abstract class classname 抽象類不能直接例項化,要...

final關鍵字 抽象類和介面

1.final關鍵字 當用final去修飾乙個類的時候,表示這個類不能被繼承。注意 a.被final修飾的類,final類中的成員變數可以根據自己的實際需要設計為fianl。b.final類中的成員方法都會被隱式的指定為final方法。當用final去修飾乙個方法的時候,被final修飾的方法不能被...