1、介面中定義成員
C#,如圖我在介面ITest新增了一個欄位n,那麼vs直接就顯示紅色的底線,而錯誤就是介面不能包含欄位
java,如下圖,編譯也是報錯但是並不是介面中不能包含而是缺少賦值,那麼我們賦值再看一次。可以看到沒有問題,也就是成員變數預設是public static final,我們知道final必須是需要賦值的,所以不賦值會編譯處所。
經過賦值後,發現沒有問題,如下圖:
2、在介面中定義一些方法
C#,我們都知道在一個介面中的方法都是需要子類別去實現的,那麼我們在介面中的方法是不能有實作的,如果加入了實作就會有錯誤。錯誤就是介面不能有定義。
java中也就是jdk1.8加入了一些可以實現的方法。 default,static中就可以有實作。如下圖,編譯沒有問題。那麼c#有預設和靜態的方法嗎?在接口中,很抱歉沒有。
c#中是沒有的,對static,default的介面方法是無法定義的。因為無效。
總結:
1、在java中,介面可以包含字段,但這些字段隱含地是static和final的,而C#不允許介面中有字段,編譯器在編譯時就會提示錯誤;
2、在Java中,方法宣告可以帶有public修飾符(即使這並非必要),但在C#中,顯式地為介面中的方法指定public修飾符是非法的。
推薦教學:java開發入門
以上是c#介面與java介面的區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!