C#(Csharp)笔记四——C# 基本语法(包含部分关键字详解)

导读:本篇文章讲解 C#(Csharp)笔记四——C# 基本语法(包含部分关键字详解),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

一丶程序实例

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();
        }
    }
}

结果:
在这里插入图片描述

二丶语法结构

using 关键字

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

using System;

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

class 关键字

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

C# 中的注释

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

/*
我是注释
*/

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

//我是注释

成员变量

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

成员函数

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

实例化一个类

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

标识符

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

  • 标识符必须以字母、下划线或 @ 开头,后面可以跟一系列的字母、数字( 0 – 9 )、下划线( _ )、@。

  • 标识符中的第一个字符不能是数字。

  • 标识符必须不包含任何嵌入的空格或符号,比如 ? – +! # % ^ & * ( ) [ ] { } . ; : ” ’ / \。

  • 标识符不能是 C# 关键字。除非它们有一个 @ 前缀。 例如,@if 是有效的标识符,但 if 不是,因为 if 是关键字。

  • 标识符必须区分大小写。大写字母和小写字母被认为是不同的字母。

  • 不能与C#的类库名称相同。

C# 关键字

保留关键字
abstract as base bool break byte case
catch char checked class const continue decimal
default delegate do double else enum event
explicit extern false finally fixed float for
foreach goto if implicit in in (generic modifier) int
interface internal is lock long namespace new
null object operator out out(generic modifier) override params
private protected public readonly ref return sbyte
sealed short sizeof stackalloc static string struct
switch this throw true try typeof uint
ulong unchecked unsafe ushort using virtual void
volatile while
上下文关键字
add alias ascending descending dynamic from get
global group into join let orderby partial(type)
partial(method) remove select set
abstract

可以和类、方法、属性、索引器及事件一起使用,标识一个可以扩展但不能被实体化的、必须被实现的类或方法。

as

一个转换操作符,如果转换失败,就返回null。

base

用于访问被派生类或构造中的同名成员隐藏的基类成员。

catch

定义一个代码块,在特定类型异常抛出时,执行块内代码。参见try和finally。

checked

既是操作符又是语句。确保编译器运行时,检查整数类型操作或转换时出现的溢出。

const

标识一个可在编译时计算出来的变量值,即一经指派不可修改的值。

delegate

指定一个声明为一种委托类型。委托把方法封装为可调用实体,能在委托实体中调用。

enum

表示一个已命名常量群集的值类型。

event

允许一个类或对象提供通知的成员,他必须是委托类型。

explicit

一个定义用户自定义转换操作符的操作符,通常用来将内建类型转换为用户定义类型或反向操作。必须再转换时调用显示转换操作符。

extern

标识一个将在外部(通常不是c#语言)实现的方法。

finally

定义一个代码块,在程序控制离开try代码快后执行。参见try和catch。

fixed

在一个代码块执行时,在固定内存位置为一个变量指派一个指针。

foreach

用于遍历一个群集的元素。

goto

一个跳转语句,将程序执行重定向到一个标签语句。

implicit

一个操作符,定义一个用户定义的转换操作符。 通常用来将预定义类型转换为用户定义类型或反向操作。隐式转换操作符必须在转换时使用。

interface

将一个声明指定为接口类型,即实现类或构造必须遵循的合同。

internal

一个访问修饰符。

namespace

定义一个逻辑组的类型和命名空间。

operator

用来声明或多载一个操作符。

out

标识一个参数值会受影响的参数,但在传入方法时,该参数无需先初始化。

params

声明一个参数数组。如果使用,必须修改指定的最后一个参数。允许可选参数。

readonly

标识一个变量的值在初始化后不可修改。

ref

标识一个参数值可能会受影响的参数。

sealed

防止类型被派生,防止方法和property被覆载。
表示密封用于类时,表示该类不能再被继承,不能和 abstract 同时使用,因为这两个修饰符在含义上互相排斥用于方法和属性时,表示该方法或属性不能再被继承,必须和 override 关键字一起使用,因为使用 sealed 修饰符的方法或属性肯定是基类中相应的虚成员通常用于实现第三方类库时不想被客户端继承,或用于没有必要再继承的类以防止滥用继承造成层次结构体系混乱恰当的利用 sealed 修饰符也可以提高一定的运行效率,因为不用考虑继承。

sizeof

一个操作符,以byte为单位返回一个值类型的长度。

stackalloc

返回在堆上分配的一个内存块的指针。

struct

struct是一种值类型,可以声明常量、字段、方法、property、索引器、操作符、构造器和内嵌类型。

throw

抛出一个异常。

try

异常处理代码块的组成部分之一。try代码块包括可能会抛出异常的代码。参阅catch和finally关键字。

typeof

一个操作符,返回传入参数的类型。

unchecked

禁止溢出检查。

unsafe

标注包含指针操作的代码块、方法或类。

using

当用于命名空间时,using关键字允许访问该命名空间中的类型, 而无需指定其全名。也用于定义finalization操作的范围。

virtual

一个方法修饰符,标识可被覆载的方法。

volatile

标识一个可被操作系统、某些硬件设备或并发线程修改的attribute。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/104981.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!