Oct 10

数据类型关键字写在前面。

数据类型更多些,更琐碎。

float 类型的值还要加个F字符标识。

变量声明不是必须要var关键字 。

用var  VariableName = VariableValue的形式,虽然前面没写数据类型,但会根据值的内容自动变成相应类型的变量。

方法声明不用function关键字。

支持声明形参不同的同名方法,叫方法重载。AS用…Arg …Rest能模拟方法重载。

方法支持用形参名字加值的形式来传实参,这样就可以不按方法声明的形参顺序传实参。

switch里case后跟的值,不支持浮点数,不支持变量,两个case不能是一样的值。

for括号里声明的变量,作用域只在for内部,AS3则在for外的方法内。

try里面有checked和unchecked用法。

类有partial分部类,Anonymou匿名类。

namespace对应as3的package,和AS3里的namespace不是一个概念。

基元类型即值类型通过语法T?可转换为可空类型。 语法T?是Nullable<T>的简写,例如Nullable<int> i = null; 或int? i = null。

方法参数有ref out 关键字。 方法参数用ref和out可以传递值类型或引用类型变量的地址,即在方法内更改参数的数据时,作为此参数传入的外部变量也会同样更改。

方法传参的变量必须赋值初始化,用out可以不初始化。

数据类型多了两个大的值类型,枚举enum和结构体,其实就是为了节约内存,只存放在栈里的值类型,但是有基本类的功能。枚举类似常量类。

Array数组类似AS的Vector,强类型,固定长度。元素赋值是用大括号{},不是中括号[]。更强大的多维数组。还有更更强大的集合类型。集合类似AS里的Array和Dictionary的混合及定制。

方法构建里的params 关键字类似AS的…Arg 。

继承和接口直接用:,没有extends   implements关键字。

调父类用base,AS用Super。

要复写父类方法,父类方法还要加virtual关键字,AS不用。

扩展方法,主要是用于C#自有类的扩展,静态类的方法参数用this关键字加要扩展的类名。

抽象类。AS没有抽象类。

written by panhezeng \\ tags: ,

©panhezeng for 阿潘道, 2006-2018. 原文地址:http://apsay.com/?p=1379
本文遵循署名-非商业性使用共享协议,转载请注明。

Leave a Reply