c#与java是升级版,c#与java对比

c#与java对照

c#基本类型转换:System.convert()

重大不同是:

java对类及类成员默认的访问级别是:package

c#默认一切为私有的private。

c#的internal对应于java的package

c#的接口成员无域,所有方法默认为public,但不能带public

派生类的成员覆盖基类的成员:用new

c#类相关的修饰符:

类默认public

属性,方法,性质等默认private

c#的override

override用于abstract或virtual方法的override

关于override:override的主法是父类或子类实例化后能访问到的方法,

如果是私有的方法,override则无任何意义,因此,在c#里,private

方法即使重复不算override,但是在java里,可能算。

c#和java关于override的规则不一样的:(如果两个方法签名一样)

c#:但是如果两个方法完全一样并且都是private,则无意义,不算override(此时加了new 则出报错。),至少有一方实例后要能访问得到。

java:如果两个方法的签名一样,则子类的访问修饰符必须大于父类的访问修饰符,否则就会不能正常形成override,则会报错,但c#不会出现。

c#的类中构造函数调用构造函数

struct Point {

public int X, Y;

public Point(int x, int y);

public Point(Point pt) : Point(pt.X, pt.Y) { } // 可以,C# 允许

};

这种语法很变态!在java中只要用this即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值