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;

 

 今天事比较多,就到这了。


本文原创发表于博客园,作者为路过秋天,原文链接:http://www.cnblogs.com/cyq1162/p/3225612.html

相关文章
|
设计模式 存储 Java
建议速读 | Java 常量定义的正确姿势!
在 Java 中,关于常量的话题似乎有很多困惑。有些人使用整数或字符串来定义常量,而另一些人则使用枚举。我还遇到了在其自己的接口中定义的常量,使用该常量的类必须实现该接口。这种策略通常称为接口常量设计模式。
629 0
|
存储 缓存 网络协议
阿里Java编程规约【二】常量定义
1. 【强制】不允许任何魔法值(即未经预先定义的常量)直接出现在代码中。 反例:
491 0
|
2月前
|
C# 开发者
C# 一分钟浅谈:Code Contracts 与契约编程
【10月更文挑战第26天】本文介绍了 C# 中的 Code Contracts,这是一个强大的工具,用于通过契约编程增强代码的健壮性和可维护性。文章从基本概念入手,详细讲解了前置条件、后置条件和对象不变量的使用方法,并通过具体代码示例进行了说明。同时,文章还探讨了常见的问题和易错点,如忘记启用静态检查、过度依赖契约和性能影响,并提供了相应的解决建议。希望读者能通过本文更好地理解和应用 Code Contracts。
43 3
|
15天前
|
存储 安全 编译器
学懂C#编程:属性(Property)的概念定义及使用详解
通过深入理解和使用C#的属性,可以编写更清晰、简洁和高效的代码,为开发高质量的应用程序奠定基础。
62 12
|
2月前
|
设计模式 C# 图形学
Unity 游戏引擎 C# 编程:一分钟浅谈
本文介绍了在 Unity 游戏开发中使用 C# 的基础知识和常见问题。从 `MonoBehavior` 类的基础用法,到变量和属性的管理,再到空引用异常、资源管理和性能优化等常见问题的解决方法。文章还探讨了单例模式、事件系统和数据持久化等高级话题,旨在帮助开发者避免常见错误,提升游戏开发效率。
70 4
|
4月前
|
API C#
C# 一分钟浅谈:文件系统编程
在软件开发中,文件系统操作至关重要。本文将带你快速掌握C#中文件系统编程的基础知识,涵盖基本概念、常见问题及解决方法。文章详细介绍了`System.IO`命名空间下的关键类库,并通过示例代码展示了路径处理、异常处理、并发访问等技巧,还提供了异步API和流压缩等高级技巧,帮助你写出更健壮的代码。
56 2