博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

类型判断符号:

  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;