C#與Java對比學習:類型判斷、類與接口繼承、代碼規范與編碼習慣、常量定義


類型判斷符號:

  C#:object a;  if(a is int) { }  用 is 符號判斷

Java:object a; if(a instanceof Integer) { } 用 instanceof 符號判斷

 

類與接口的繼承:

   C#:public class MDataRow : List<MDataCell>, IDataRecord, ICustomTypeDescriptor

Java:public class MDataRow extends ArrayList<MDataCell> implements Set


共同點都是在順序上,先基類,后接口。 

C#的繼承與實現,先用":"打頭,再用“,“分隔,其中接口都規范用 I 開頭。

Java的類繼承用extends,接口實現用implements,接口沒有“I”開頭規范,容易傻傻分不清是類還是接口。


代碼規范與編碼習慣:

看一小段Java代碼:

package Test;
import java.lang.*;

public  class Demo {
     int id;
     public  int getId() {
         return id;
    }
     public  void setId( int id) {
         this.id = id;
    }

     public Demo( int id) {
         super();
         this.id = id;
    }
    
     void write(){
        System.out.print(id);
    }
}

基本比較如下:  

  C#:namespace ; using   ; 方法首字母大寫 ; base  調用基類相關成員 ; 默認括號是換行
Java:package     ; import ; 方法首字母小寫 ; super 調用基類相關成員 ; 默認括號無換行

 

C#多出來的一些屬性與語法: 

由於C#是鑒習Java之后產生的語言,所以C#會比Java多一些東西,這些是有和無的關系,只順路一提了:

屬性、枚舉、委托、事件、unsafe(代碼指針)、重載復蓋方法相關的操作符(override、virtual、new)、引用傳參(ref、out)、字符轉義(@)等。

 

常量定義:


  C#:const string name; 或 static readonly string name;

 Java:final string name;

 

 今天事比較多,就到這了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM