C#与JAVA之比较(图表说明)

类别:.NET开发 点击:0 评论:0 推荐:

C#JAVA之比较(图表说明)

笔者:乘风笑傲

笔者曾经使用过C#和JAVA,种种过程有感于心,故作之,以抛砖引玉。

 

C#

JAVA

目标

提供易用、面向对象、跨平台

提供易用、面向对象、跨平台

GC

丰富的类库

中间语言

IL

JVM

自动生成文档

(/out生成XML文档)

有(javadoc生成HTML文档)

值类型

都是对象派生的

基本类型是专门的

跨平台

公共语言运行时

虚拟机

操作符重载

结构类型

委托和事件

内置的委托和事件

接口和内部类定义

传递参数

值、引用传递

只能值传递

属性

支持

不支持

枚举

不安全模式

JNI可达到同样效果

分度器

抛出异常

数组

规则、不规则均可

不规则

接口

支持

支持

Switch

可用表达式

只能整数

Foreach

只能用forwhile

 

 

 

前记

  笔者曾是JAVA的忠实拥护者,何故?就是因为它可以跨平台,虽然这样说其实有些不然,但是那些基于JAVA的开发平台都是些倒霉的东西,这就不能不让人承认微软的东西就是好用,光是整洁的代码界面就让我感觉很好。

  故穷则变,此文多有为C#摇旗呐喊之意。

一点说明:跨平台性

JAVA的跨平台性得益于它的JVM,即通过此完成JAVA代码到多平台机器语言的转变,但这个前提是转变前的代码必须用JAVA编写。

.NET提供CLScommon language specification,允许第三方编写编译器,在明确定义的规则下于.NET语言进行交互

本文地址:http://com.8s8s.com/it/it45728.htm