C# 基本语法

  C# 是一种面向对象的编程语言。在面向对象的程序设计方法中,程序由各种相互交互的对象组成。相同种类的对象通常具有相同的类型,或者说,是在相同的 class 中。

  例如,以 Rectangle(矩形)对象为例。它具有 length 和 width 属性。根据设计,它可能需要接受这些属性值、计算面积和显示细节。

  让我们来看看一个 Rectangle(矩形)类的实现,并借此讨论 C# 的基本语法:

  using System;

  namespace RectangleApplication

  {

  class Rectangle

  {

  // 成员变量

  double length;

  double width;

  public void Acceptdetails()

  {

  length = 4.5;

  width = 3.5;

  }

  public double GetArea()

  {

  return length * width;

  }

  public void Display()

  {

  Console.WriteLine("Length: {0}", length);

  Console.WriteLine("Width: {0}", width);

  Console.WriteLine("Area: {0}", GetArea());

  }

  }

  class ExecuteRectangle

  {

  static void Main(string[] args)

  {

  Rectangle r = new Rectangle();

  r.Acceptdetails();

  r.Display();

  Console.ReadLine();

  }

  }

  }

  当上面的代码被编译和执行时,它会产生下列结果:

  Length: 4.5

  Width: 3.5

  Area: 15.75

  using 关键字

  在任何 C# 程序中的第一条语句都是:

  using System;

  using 关键字用于在程序中包含命名空间。一个程序可以包含多个 using 语句。

  class 关键字

  class 关键字用于声明一个类。

  C# 中的注释

  注释是用于解释代码。编译器会忽略注释的条目。在 C# 程序中,多行注释以 /* 开始,并以字符 */ 终止,如下所示:

  /* This program demonstrates

  The basic syntax of C# programming

  Language */

  单行注释是用 '//' 符号表示。例如:

  }//end class Rectangle

  成员变量

  变量是类的属性或数据成员,用于存储数据。在上面的程序中,Rectangle 类有两个成员变量,名为 length 和 width。

  成员函数

  函数是一系列执行指定任务的语句。类的成员函数是在类内声明的。我们举例的类 Rectangle 包含了三个成员函数: AcceptDetails、GetArea 和 Display。

  实例化一个类

  在上面的程序中,类 ExecuteRectangle 是一个包含 Main() 方法和实例化 Rectangle 类的类。

  标识符

  标识符是用来识别类、变量、函数或任何其它用户定义的项目。在 C# 中,类的命名必须遵循如下基本规则:

  标识符必须以字母开头,后面可以跟一系列的字母、数字( 0 - 9 )或下划线( _ )。标识符中的第一个字符不能是数字。

  标识符必须不包含任何嵌入的空格或符号,比如 ? - +! @ # % ^ & * ( ) [ ] { } . ; : " ' / \。但是,可以使用下划线( _ )。

  标识符不能是 C# 关键字。

  C# 关键字

  关键字是 C# 编译器预定义的保留字。这些关键字不能用作标识符,但是,如果您想使用这些关键字作为标识符,可以在关键字前面加上 @ 字符作为前缀。

  在 C# 中,有些标识符在代码的上下文中有特殊的意义,如 get 和 set,这些被称为上下文关键字(contextual keywords)。

  下表列出了 C# 中的保留关键字(Reserved Keywords)和上下文关键字(Contextual Keywords):

  保留关键字

  abstractasbaseboolbreakbytecase

  catchcharcheckedclassconstcontinuedecimal

  defaultdelegatedodoubleelseenumevent

  explicitexternfalsefinallyfixedfloatfor

  foreachgotoifimplicitinin (generic

  modifier)int

  interfaceinternalislocklongnamespacenew

  nullobjectoperatoroutout

  (generic

  modifier)overrideparams

  privateprotectedpublicreadonlyrefreturnsbyte

  sealedshortsizeofstackallocstaticstringstruct

  switchthisthrowtruetrytypeofuint

  ulonguncheckedunsafeushortusingvirtualvoid

  volatilewhile

  上下文关键字

  addaliasascendingdescendingdynamicfromget

  globalgroupintojoinletorderbypartial

  (type)

  partial

  (method)removeselectset

  本文转载自:w3cschool(编辑:雷林鹏 来源:网络)

雷林鹏分享:C# 基本语法的更多相关文章

  1. 雷林鹏分享:XML 语法规则

    XML 语法规则 XML 的语法规则很简单,且很有逻辑.这些规则很容易学习,也很容易使用. 所有的 XML 元素都必须有一个关闭标签 在 HTML 中,某些元素不必有一个关闭标签: This is a ...

  2. 雷林鹏分享:Ruby 语法

    Ruby 语法 让我们编写一个简单的 Ruby 程序.所有的 Ruby 文件扩展名都是 .rb.所以,把下面的源代码放在 test.rb 文件中. #!/usr/bin/ruby -w puts &q ...

  3. 雷林鹏分享:Lua 基本语法

    Lua 学习起来非常简单,我们可以创建第一个 Lua 程序! 第一个 Lua 程序 交互式编程 Lua 提供了交互式编程模式.我们可以在命令行中输入程序并立即查看效果. Lua 交互式编程模式可以通过 ...

  4. 雷林鹏分享:jQuery EasyUI 插件

    jQuery EasyUI 插件 jQuery EasyUI 提供了用于创建跨浏览器网页的完整的组件集合,包括功能强大的 datagrid(数据网格).treegrid(树形表格). panel(面板 ...

  5. 雷林鹏分享:XML 验证

    XML 验证 拥有正确语法的 XML 被称为"形式良好"的 XML. 通过 DTD 验证的XML是"合法"的 XML. 形式良好的 XML 文档 "形 ...

  6. 雷林鹏分享:XML 验证器

    XML 验证器 使用我们的 XML 验证器来对您的 XML 文件进行语法检查. XML 错误会终止您的程序 XML 文档中的错误会终止您的 XML 应用程序. W3C 的 XML 规范声明:如果 XM ...

  7. 雷林鹏分享:XMLHttpRequest 对象

    XMLHttpRequest 对象 XMLHttpRequest 对象 XMLHttpRequest 对象用于在后台与服务器交换数据. XMLHttpRequest 对象是开发者的梦想,因为您能够: ...

  8. 雷林鹏分享:XML 命名空间

    XML 命名空间 XML 命名空间提供避免元素命名冲突的方法. 命名冲突 在 XML 中,元素名称是由开发者定义的,当两个不同的文档使用相同的元素名时,就会发生命名冲突. 这个 XML 携带 HTML ...

  9. 雷林鹏分享:XML DOM

    XML DOM DOM(Document Object Model 文档对象模型)定义了访问和操作文档的标准方法. XML DOM XML DOM(XML Document Object Model) ...

随机推荐

  1. android uboot中的mmc命令

    一:mmc的命令如下: 1:对mmc读操作 mmc read addr blk# cnt 2:对mmc写操作 mmc write addr blk# cnt 3:对mmc擦除操作 mmc erase ...

  2. 集合框架-Set集合

    代码: Collection c = new ArrayList(); c.add("hello"); c.add("world"); c.add(" ...

  3. 基于快速排序思想partition查找第K大的数或者第K小的数。

    快速排序 下面是之前实现过的快速排序的代码. function quickSort(a,left,right){ if(left==right)return; let key=partition(a, ...

  4. Failed to connect to the host via ssh: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password

    Centos7.5 执行ansible命令报错 问题: [root@m01 ~]# ansible servers -a "hostname" -i ./hosts -u root ...

  5. Django组件(五) Django之ContentType组件

    基础使用 -contenttype组件 -django提供的一个快速连表操作的组件,可以追踪项目中所有的APP和model的对应关系,并记录在ContentType表中. 当我们的项目做数据迁移后,会 ...

  6. .NET Standard vs. .NET Core

    What is the difference between .NET Core and .NET Standard Class Library project types? Answer1 When ...

  7. p4168 [Violet]蒲公英(分块)

    区间众数的重题 和数列分块入门9双倍经验还是挺好的 然后开O2水过 好像有不带log的写法啊 之后在补就是咕咕咕 // luogu-judger-enable-o2 #include <cstd ...

  8. 题解——HDU 2089 不要62(数位DP)

    最近在学数位DP 应该是入门题吧 设\( dp[i][0/1] \)表示到第\( i \)位时,前一位是否是6的满足条件的数的个数 然后就是套路 注意\( limit \)的限制条件以及转移时候信息的 ...

  9. 论文笔记:Multi-Agent Actor-Critic for Mixed Cooperative-Competitive Environments

    Multi-Agent Actor-Critic for Mixed Cooperative-Competitive Environments 2017-10-25  16:38:23   [Proj ...

  10. Vue属性中带’-‘的处理方式

    我们在写属性时经常会加入’-‘来进行分词,比如:<panda from-here=”China”></panda>,那这时我们在props里如果写成props:[‘form-h ...