关键字:

virtual:  虚方法,本身可以被实例化,也可以在派生类中重写该方法;

override:在派生类重写基类虚方法时声明,避免了C++中的潜在运行错误;

abstract:声明为抽象类、抽象方法,不能实例化;

sealed:  不可被继承类、不能被重写方法;

param:   表示函数参数为一维数组,且可以支持特殊写法,如 void myAdd(param int[] xarray); -> void myAdd(1, 2, 3); 值得注意的是匿名函数以param声明参数,重载会出现不识别该函数的问题。

修饰符:

protected:只有本身与派生的类型能够访问;

private:只能在所属类型内能够访问;

internal:只能在包含它的程序集中访问;

接口:

语法声明与抽象类完全相同,但不允许提供接口中任何成员的实现;

定义接口时不允许包含重载运算符;

一般用 Ixxx(); 定义;

接口继承:

  类继承接口:必须实例化所有成员与方法;

  接口继承接口:新接口会拥有原接口的所有成员与自己的新成员;

Interface 与 Abstract 的区别:

  借用一张java的区别,与C#有差别,但主体概念上差不多。

  借用以上总结,C# 主要的差别在于:

1. 类不能多重继承,接口可以多重继承;

2. 类的成员可公有可私有,接口则都是公有;

is 与 as 操作符:

is:检查一个对象是否兼容于指定类型,并返回一个 Boolean 值;

as: 进行强制类型转换,能转换则返回实例,不能则返回 null;将  if(obj is ClassA){ Class A = (ClassA)obj; } 合并为了同一句:ClassA A = obj as ClassA;

C#5.0 异步关键字:

await:异步操作符,调用异步方法时使用,会启动一个新线程去执行;

async:异步方法声明符,被该符号生命的方法,调用时需要使用 await 操作符,没有 await 的话将会被同步执行;

c ? x:y - c 条件成立,则返回x,否则返回y

x??y - 当 x 为 null 时返回 y,否则返回x

最新文章

  1. 响应式手机商城页面顶部样式HTML代码
  2. linux top 源码分析
  3. MBProgressHud添加自定义动画
  4. Sql Server来龙去脉系列之二 框架和配置
  5. nginx 的启动脚本
  6. 在.net Core 中像以前那样的使用HttpContext.Current
  7. Google邮箱:Gmail国际顶级邮箱
  8. PHP第一课笔记
  9. python2.7_1.4_将IPV4地址转换成不同的格式
  10. 过实现鹰眼图这个功能来进一步学习MapControl控件
  11. 【转】jqGrid学习之参数
  12. 你知道自己执行的是哪个jre吗?
  13. springmvc基础学习2---简单配置文件
  14. 网站转变风格的css变化
  15. SpringMVC 教程 - URI 链接
  16. VMProtect1.63分析
  17. *****hibernate主键生成
  18. LoadRunner录制脚本-基础
  19. 机器学习---笔记----numpy和math包中的常用函数
  20. linux终端发送邮件

热门文章

  1. hdoj 4552 怪盗基德的挑战书【求前缀在字符串中出现的次数之和】
  2. SVN强制注释
  3. JSP简易留言板
  4. Java学习的随笔(2)Java语言的三大特性
  5. Facebook 开源安卓版 React Native,开发者可将相同代码用于网页和 iOS 应用开发
  6. 使用Dreamwaver cc中的SVN功能,用于传输BAE和SAE中的文件
  7. iOS 如何优雅的处理“回调地狱Callback hell”(一) (下)
  8. checkbox 全选/取消
  9. __name__属性
  10. CSS基本知识介绍