接口:

接口可以包含方法、属性、事件、索引器或这四种成员类型的任意组合。 接口不能包含常量、字段、运算符、实例构造函数、析构函数或类型。当类或结构实现接口时,类或结构必须为该接口定义的所有成员提供实现。

继承关系:类或结构可以实现多个接口,但是类只能继承单个类(抽象或不抽象)

类:

所有方法、字段、常量、属性和事件都必须在类型内部进行声明;这些称为类型的“成员”。  与其他一些语言不同的是,C# 中没有全局变量或方法。  即使是作为程序入口点的 Main 方法也必须在类或结构内部进行声明。  下表列出了可在类或结构中声明的所有不同种类的成员。

字段、常量、属性、方法、构造函数、析构函数、事件、索引器、运算符、嵌套类型

有些方法和属性要供类或结构外部的代码(称为“客户端代码”)调用或访问。  另有一些方法和属性可能仅供类或结构在自身内部使用。  应限制您的代码的可访问性,只允许应当访问它们的客户端代码进行访问,这一点十分重要。  使用访问修饰符 public、protected、internal、protected internal 和 private 可以指定类型及其成员对于客户端代码的可访问性。  默认可访问性为 private。

泛型类型:

可以使用一个或多个类型参数来定义类和结构。  客户端代码在创建类型的实例时提供类型。  例如,System.Collections.Generic 命名空间中的 List<T> 类使用一个类型参数进行定义。  客户端代码创建 List<string> 或 List<int> 的实例来指定列表中将包含的类型。  有关详细信息,请参阅 泛型(C# 编程指南)。

静态类型:

可以将类(不是结构)声明为静态。  静态类只能包含静态成员,不能使用 new 关键字进行实例化。  在程序加载时,静态类的一个副本将加载到内存中,可通过类名称访问该类的成员。  类和结构都可以包含静态成员。  有关详细信息,请参阅 静态类和静态类成员(C# 编程指南)。

嵌套类型:

类或结构可以嵌套在其他类或结构中。  有关更多信息,请参见嵌套类型。

分部类型:

可以在一个代码文件中定义类、结构或方法的一部分,而在另一个代码文件中定义另一部分。  有关更多信息,请参见分部类和方法。

对象初始值设定项:

可以实例化和初始化类或结构对象以及对象的集合,无需显式调用其构造函数。  有关更多信息,请参见对象和集合初始值设定项(C# 编程指南)。

匿名类型:

在不方便或没必要创建命名类的情况下,例如当使用无需保留或传递给其他方法的数据结构填充列表时,可以使用匿名类型。  有关更多信息,请参见匿名类型(C# 编程指南)。

扩展方法:

通过创建一个单独的类型,然后将该类型的方法当作原始类型的方法来调用,可以在不必创建派生类的情况下对类进行“扩展”。  有关更多信息,请参见扩展方法(C# 编程指南)。

隐式类型化局部变量:

在类或结构方法中,可以使用隐式类型来指示编译器在编译时确定正确的类型。  有关更多信息,请参见隐式类型的局部变量(C# 编程指南)。

C#语法知识的更多相关文章

  1. 那点你不知道的XHtml(Xml+Html)语法知识(DTD、XSD)

    什么是XHtml: 摘录网上的一句话,XHTML就是一个扮演着类似HTML的角色的XML. XHtml可当模板引擎应用: CYQ.Data 框架里有一套XHtmlAction模板引擎, 应用在QBlo ...

  2. JSP的学习(5)——语法知识三之include指令

    本篇继续来对JSP语法中的JSP指令进行学习,在<JSP的学习(3)——语法知识二之page指令>中,已经介绍了JSP指令的书写格式和page指令的详细信息,所以在这一篇中我们会对JSP指 ...

  3. JSP的学习(3)——语法知识二之page指令

    本篇接上一篇<JSP的学习(2)——语法知识一>,继续来学习JSP的语法.本文主要从JSP指令中的page指令,对其各个属性进行详细的学习: JSP指令: JSP指令是为JSP引擎而设计的 ...

  4. JSP的学习(2)——语法知识一

    上一篇<JSP的学习>讲述了JSP的一些基础知识和底层原理,本篇将来学习JSP所需掌握的语法知识等. JSP的语法主要包括以下几个部分的内容: 1)         JSP模板元素 2)  ...

  5. thinkPHP 模板中的语法知识 详细介绍(十二)

    原文:thinkPHP 模板中的语法知识 详细介绍(十二) 本章节:介绍模板中的语法,详细的语法介绍 一.导入CSS和JS文件    ==>记住常量的是大写 1.css link .js  sc ...

  6. XHtml(Xml+Html)语法知识(DTD、XSD)

    那点你不知道的XHtml(Xml+Html)语法知识(DTD.XSD) 什么是XHtml: 摘录网上的一句话,XHTML就是一个扮演着类似HTML的角色的XML. XHtml可当模板引擎应用: CYQ ...

  7. RxSwift之路 1#Swift语法知识准备

    RxSwift之路 1#Swift语法知识准备 在开始学习 RxSwift 之前,一定要对 Swift 相关语法有所了解,否则就很难理解为什么可以这样.关于 Swift 的学习其实只要看看 Swift ...

  8. Java基础语法知识你真的都会吗?

    第一阶段 JAVA基础知识 第二章 Java基础语法知识 在我们开始讲解程序之前,命名规范是我们不得不提的一个话题,虽说命名本应该是自由的,但是仍然有一定的"潜规则",通过你对命名 ...

  9. BitBake使用攻略--BitBake的语法知识一

    目录 写在前面 1. BitBake中的赋值 1.1 直接赋值 1.2 间接赋值 1.3 追加与前加赋值 1.4 Override风格的赋值语法 1.5 标志赋值 1.6 内联函数赋值 1.7 其他一 ...

  10. Ajax基础知识 浅析(含php基础语法知识)

    1.php基础语法    后缀名为.php的文件 (1) echo   向页面中输入字符串  <?php    所有php相关代码都要写在<?php ?>这个标签之中 echo &q ...

随机推荐

  1. This Node源码分析

    看军哥博客有Rtos的源码分析,手痒耍宝把自己读的源码笔记分享出来.愿与众君互相讨论学习 namespace ros { namespace names { void init(const M_str ...

  2. Java—事件和多线程机制

    一  事件 1.1 事件源 图形用户界面上每个可能产生事件的组件称为事件源. 1.2 事件监听者 Java系统中注册的用于接收特殊事件的类.不同的事件对应着不同的监听者,要想事件被监听者监听并处理,则 ...

  3. Java中sql语句的引号问题

    1..sql语句 在数据库中,当我们查询语句时,会使用类似的语句: Select * from userinfo where userid='1' or 1; Select * from userin ...

  4. PHP 文件包含总结 include require 命名空间 autoload spl_autoload_register 读取文件路径

    总结: 1. include或require包含其他文件 使用./或者 ../,这里的当前路径和上一层路径,取决于运行脚本的路径,会存在如下问题. 在写PHP程序时,经常要用到include或requ ...

  5. [整]磁盘 I/O 性能监控指标和调优方法

    在介绍磁盘 I/O 监控命令前,我们需要了解磁盘 I/O 性能监控的指标,以及每个指标的所揭示的磁盘某方面的性能. 磁盘 I/O 性能监控的指标主要包括: 指标 1:每秒 I/O 数(IOPS 或 t ...

  6. Scala HandBook

    目录[-] 1.   Scala有多cool 1.1.     速度! 1.2.     易用的数据结构 1.3.     OOP+FP 1.4.     动态+静态 1.5.     DSL 1.6 ...

  7. Java设计模式 工厂模式概念解析

    定义:工厂模式专门负责将大量有共同接口的类实例化.工厂模式可以动态决定将哪一个类实例化,而不必事先知道每次要实例化哪一个类. 三种形态: 简单工厂模式:又称静态工厂方法 工厂方法模式:又称多态性工厂模 ...

  8. JSON简单介绍

    //JSON是一种数据格式//JSON比较像php里面的关联数组,它里面存的内容也是key和value成对存在的 JSON写法格式 var js = { "one":"h ...

  9. 2014中国黑客榜(beta版)

    黑客,英文hacker.精通计算机各类技术的计算机高手,泛指擅长IT技术的人群.计算机科学家. 最近受某机构所托搜集国内活跃黑客近况.本着客观专业,权威可信的原则参考了国内从00年到最新的黑客榜单,以 ...

  10. asp.net mvc 模型验证注解,表单提交

    一.添加模型 public class Account { public int ID { get; set; } [Display(Name = "姓名")] //设置要显示的字 ...