抽象類和介面,老生常談

2022-09-03 11:45:08 字數 596 閱讀 5402

特點: 

1.抽象類中可以構造方法 

2.抽象類中可以存在普通屬性,方法,靜態屬性和方法。 

3.抽象類中可以存在抽象方法。 

4.如果乙個類中有乙個抽象方法,那麼當前類一定是抽象類;抽象類中不一定有抽象方法。 

5.抽象類中的抽象方法,需要有子類實現,如果子類不實現,則子類也需要定義為抽象的。 

6,抽象類不能被例項化,抽象類和抽象方法必須被abstract修飾

關鍵字使用注意: 

抽象類中的抽象方法(其前有abstract修飾)不能用private、static、synchronized、native訪問修飾符修飾。

1.在介面中只有方法的宣告,沒有方法體。 

2.在介面中只有常量,因為定義的變數,在編譯的時候都會預設加上public static final 

3.在介面中的方法,永遠都被public來修飾。 

4.介面中沒有構造方法,也不能例項化介面的物件。(所以介面不能繼承類) 

5.介面可以實現多繼承 

6.介面中定義的方法都需要有實現類來實現,如果實現類不能實現介面中的所有方法則實現類定義為抽象類。 

7,介面可以繼承介面,用extends

老生常談 name和id的區別

我做web開發是從.net開始的,大部分控制項都是伺服器端控制項,用唯一的id進行識別,基本上不會用到name屬性。最近需要寫一些cgi程式,發現name和id非常相似,甚至感覺是重複的屬性,於是問了一下狗哥。狗哥說,區別在於,id相當於身份證號,name相當於姓名,換言之,身份證號是唯一的,而姓名...

介面和抽象類

介面和抽象類 今天自學了一下介面,從第一次接觸介面又進一步理解介面的原理。想到介面或許我們更多的是想到和類的對比,而類中抽象類和介面又更為相似。現在我講下我對介面和抽象類的理解。如果單從具體 來看,對這兩個概念很容易模糊,甚至覺得介面就是多餘的,因為單從具體功能來看,除多重繼承外 c 抽象類似乎完全...

抽象類和介面

抽象類 1.是一種特殊的類,除了不能被例項化外,具有類得其他特性.2.抽象類的方法可以不宣告為abstract,此時可以實現方法提 如果宣告為abstract,則不可以實現方法體,只能宣告,如 public abstract int remove int i,int j 此時類必須宣告為抽象 3.乙...