四 、C#基础 – C# 的 常见概念简述

在上篇小说中,你跟着本身写了2个HelloWorld,本篇中,大家来谈谈一些C#程序中的小概念

1、C# 程序结构

一个 C# 程序重要总结以下部分:

  • 命名空间注脚(Namespace declaration)
  • 一个类(class)
  • Class 方法
  • Class 属性
  • 一个 Main(主)方法
  • 语句(Statements)& 表达式(Expressions)
  • 注释

作者们把上一篇的代码添出来

 1 using System;
 2 
 3 namespace HelloWorld
 4 {
 5     class Program
 6     {
 7         static void Main(string[] args)
 8         {
 9             Console.Write("HelloWorld");
10             Console.Read();
11         }
12     }
13 }

 

次第的第二行 using System; – using 关键字用于在程序中富含 System
命名空间。 1个主次一般有八个 using 语句

下一行namespace HelloWorld –
namespace关键字用于注脚命名空间,三个命名空间里有四个类。本代码中,表示一个为HelloWorld的命名空间

下一行class Program –
class关键字用于申雅培(Abbott)个类,类 Program
包罗了先后选用的数目和方式申明。类一般包括多个方法。方法定义了类的作为。在此间,Program 类唯有三个 Main 方法。

下一行定义了 Main 方法,是兼备 C# 程序的
入口点。Main 方法求证当执行时 类将做什么动作。

注明是用于解释代码。编写翻译器会忽视注释的条款。在
C# 程序中,多行注释以 /* 初步,并以字符 */ 终止,如下所示:

/* 这是C#中
的多行注释的
演示 */

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

//这是C#中的单行注释的演示 

 
2、标识符

标识符是用来识别类、变量、函数或任何别的用户定义的档次。在 C#
中,类的命名必须根据如下基本规则:

  • 标识符必须以字母、下划线或 @ 初阶,后边可以跟一多重的字母、数字(
    0 – 9 )、下划线( _ )、@。
  • 标识符中的率先个字符不可能是数字。
  • 标识符必须不包括其余嵌入的空格或标志,比如 ? – +! # % ^ & * ( ) [
    ] { } . ; : ” ‘ / \。
  • 标识符不可能是 C# 关键字。除非它们有3个 @ 前缀。 例如,@if
    是卓有成效的标识符,但 if 不是,因为 if 是重庆大学字。
  • 标识符必须分别轻重缓急写。大写字母和小写字母被认为是见仁见智的字母。
  • 不能与C#的类库名称相同。

3、C# 关键字

主要字是 C#
编写翻译器预约义的保留字。那个关键字无法用作标识符,可是,假使你想使用这一个首要字作为标识符,能够在重中之重字后边加上
@ 字符作为前缀。
在 C# 中,有个别标识符在代码的上下文中有至极的意义,如 get 和
set,这个被喻为上下文关键字(contextual keywords)。
下表列出了 C# 中的保留主要字(Reserved
Keywords)和上下文关键字(Contextual Keywords):

保留首要字

图片 1

图片 2

 

上下文关键字

图片 3

详见:https://docs.microsoft.com/zh-cn/dotnet/csharp/language-reference/keywords/

 

4、C# 数据类型

C#是一种强类型语言。
各类变量和常量都有几个连串,种种总括为值的表明式也是如此,每种方法签名为每一个输入参数和重回值钦赐八个门类。全体的品种都以继续自System.Object

C#的数据类型有三种:

  • 值类型(Value types)
  • 引用类型(Reference types)
  • 指针类型(Pointer types)

在不安全的代码里才会用到指针类型,本种类不介绍。你仅要知道,指针类型不从
object 继承,并且指针类型与 object 之间不存在转换。
此外,装箱和裁撤装箱不援救指针。
不过,你可在差别的指针类型之间以及指针类型和整型之间开始展览转换。(那句话记不住也远非涉嫌,这么些项目在绝超越56%的行事中都用不上,个人觉得,那么些种类就是为了给c++程序员用的,个人观点不喜勿喷!)。前边大家也会有独立的章节去讲,那里你不用太纠结,心里有那一个概念就行了。

详见:https://docs.microsoft.com/zh-cn/dotnet/csharp/language-reference/keywords/types 

 

5、C# 变量

 3个变量只可是是一个供程序操作的存款和储蓄区的名字。在 C#
中,每一个变量都有3个特定的项目,类型决定了变量的内部存款和储蓄器大小和布局。范围内的值能够储存在内部存款和储蓄器中,能够对变量实行一多重操作。

 C# 中变量定义的语法:

<data_type> <variable_list>;

 

在这里,data_type 必须是七个管用的 C# 数据类型,能够是
char、int、float、double 或其余用户自定义的数据类型。variable_list
可以由1个或三个用逗号分隔的标识符名称组成。

概念变量示例:

int i,j;
char c;
string mrbug;

 

变量通过在等号后跟多少个常量表达式进行伊始化(又叫赋值)。初叶化的貌似格局为:

<data_type> <variable_name> = value;

 

局地示范:

int i = 0 , j = 100; //初始化 i 和 j

string myname = "mrbug" ; //初始化myname

 

概念变量时就为那几个变量赋1个初叶值,是1个曼妙的编码习惯

 

6、C# 常量

顾名思意常量是固定值,程序执行时期不会转移。常量能够是别的基本数据类型,比如整数常量、浮点常量、字符常量也许字符串常量,还有枚举常量。
常量能够被作为常规的变量,只是它们的值在概念后无法被修改。在C#中,常量以下边包车型大巴样式定义:

const <data_type> <constant_name> = value;

 

概念常量示例:

const double pi = 3.1415926; // 常量声明

 

详见:https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/classes-and-structs/constants

 

7、C# 中的 Lvalues 和 Rvalues

C# 中的二种表明式:

  • lvalue:lvalue 说明式能够出现在赋值语句的左侧或右手。
  • rvalue:rvalue
    表明式可以出现在赋值语句的左侧,不能够出今后赋值语句的左手。

左值(lvalue)是指在单个表明式的外部保留的靶子。
能够将左值视为具盛名称的目的。 全数变量(包涵不可能改变的 (const)
变量)都以左值。 左值是三个不在使用它的表明式的外部保留的暂时值。

数值是 rvalue
的,由此无法被赋值,不可能出现在赋值语句的左手。下边是3个灵光的语句:

int x = 3 + 4;  

 

在此示例中,x 是左值,因为它在概念它的表明式的外表保留。 表明式 3 + 4
是为三个右值,因为其总结结果为不在定义它的表明式的表面保留的权且值。 

 

8、C# 命名空间(Namespace)

取名空间的宏图指标是提供一种让一组名称与其余名目分隔开分离的法子。在1个命名空间中扬言的类的名目与另二个命名空间中注脚的同一的类的称号不争辨。

取名空间的概念是以首要字 namespace 初始,后跟命名空间的名号,如下所示:

namespace namespace_name
{
   // 代码声明
}

 

using 关键字标明程序采用的是给定命名空间中的名称。例如,我们在先后中采纳System 命名空间,当中定义了类 Console。大家能够只写:

Console.WriteLine ("Hello world");

 

咱俩得以写完全限定名称,如下:

System.Console.WriteLine("Hello world");

 

在C#中,命名空间能够被嵌套,即您可以在一个命名空间内定义另多少个命名空间,如下所示:

namespace namespace_name1 
{
   // 代码声明
   namespace namespace_name2 
   {
     // 代码声明
      int age = 18 ;

   }
}

 

在C#中,你能够使用点(.)运算符访问嵌套的命名空间的积极分子,例如上例中你能够那样使用:

namespace_name1.namespace_name2.age = 30 ;

 

详见:https://docs.microsoft.com/zh-cn/dotnet/csharp/language-reference/keywords/namespace


 

C#基础,目录

上一篇:3、C#基础 – C# 的 Hello
World

下一篇:5、C#基础 –
C#的值类型

相关文章