介面 抽象類都要單建(好習慣)

2022-06-21 10:24:15 字數 1525 閱讀 9779

今天,二輪複習到介面和抽象類。就隨隨便便 建立乙個特別簡單的抽象類,沒先到,萬萬沒想到遇到了麻煩。

下面是我的反面教材,就這個憋了我一上午。各種查資料,搜帖子,還重新設定path、classpath....艱難險阻,最後終於發現了錯誤之處。

**例項:

1

public

abstract

class

p2 4

5class superp2 extends

p2 10}11

class

test

16 }

注意前提:1.上面的**我在eclipse裡編寫的;

2.上面的所有**都是在乙個class檔案裡的。

下面是在eclipse裡面的顯示,感覺是非常正常,沒有任何的報錯。

執行之後就傻眼了!!!!

前前後後檢查了無數遍,都沒錯啊。。。

經過一系列的方案,我想那就搬出編譯器鼻祖來驗證我編寫的程式有沒有問題吧。

*****記事本,我把上面的所有**都黏貼到乙個記事本裡面。用最初學習大方法開始編譯和執行這段**:

這時候,我寧願它顯示執行不通過。這樣我還能找到**錯了。結果編譯、職執行都通過了,在eclipse裡依然通不過,真不知道咋整好了。

於是,我請教了大神。

嗯嗯,大神就是經驗多,照做了以後真的就成了。可是,我心裡依然有疑惑,為啥同樣的**,黏貼在記事本裡,再編譯、執行都可以。

我去找了一下dos命令下生成的檔案,終於發現問題所在了:

看見沒有,它自動將你乙個檔案裡的多個類,分別建立乙個.class檔案了。這就是神奇之處啊啊啊啊啊。以前學習的時候,知道會這麼做,有這麼一件事,可也沒覺得有啥好處。今天算是領教啦。

再看看eclipse裡的檔案:

再看看我和大神的對話,簡直自己美上天了。

最後,再用eclipse驗證一下:

通過這個事件,真是的到了血的教訓。知道以後編寫程式的時候,有個好習慣的重要性——介面、抽象類都要單建。我會繼續努力的。

介面,抽象類

介面 用inte ce定義介面 由常量定義和方法定義兩部分組成 格式 修飾符 inte ce a extends b 在類中實現介面,方法名 返回值型別 引數的個數和型別必須與介面中完全一致 實現介面中所有方法 實現多個介面,中間用逗號分隔 抽象類包含抽象方法的乙個類 沒有足夠資訊描繪物件 用abs...

抽象類 介面

抽象類中的抽象方法禁止寫任何實現 1,a 抽象類不能被繼承 b 抽象方法不能有任何實現,一切實現都在子類中 c 抽象類中可以有非抽象方法,但是非抽象類絕對不能有抽象方法 class program public abstract class person public class chinese p...

抽象類 介面

1,包含乙個抽象方法的類必須是抽象類 2,抽象方法和抽象類都要使用abstract關鍵字宣告 3,抽象方法只需要宣告而不需要實現 4,抽象類必須被子類繼承,子類 如果不是抽象類 必須覆寫抽象類中的全部抽象方法 何來此問題呢?因為抽象類不能直接例項化,構造方法的作用就是例項化物件的時候,給物件初始化屬...