C# 基本语法

在这一章中,我们将深入探讨C#的基本语法,这是任何想要掌握这门语言的人都必须理解的核心概念。C#是一种现代、通用、面向对象的编程语言,它结合了C和C++的优秀特性,并添加了一些新的元素来简化开发过程。

变量与数据类型

声明变量

在C#中,声明一个变量需要指定变量的类型以及变量名。例如:

这里我们声明了一个整型变量age和一个字符串类型的变量name

数据类型

C#的数据类型可以分为两大类:值类型和引用类型。

值类型

值类型包括数值类型、布尔类型和结构类型等。这些类型的变量直接存储数据的值。例如:

引用类型

引用类型包括类、接口、数组、委托等。引用类型不直接存储数据,而是存储指向数据的引用。例如:

变量的作用域

变量的作用域决定了它在代码中的可见性和生命周期。C#中有三种作用域:全局作用域、局部作用域和块作用域。

  • 全局作用域:在类外部声明的变量。
  • 局部作用域:在方法或语句块内部声明的变量。
  • 块作用域:在特定代码块(如if语句或循环体)内部声明的变量。
-- -------------------- ---- -------
----- -------
-
    ------ --- --------- - --- -- -----

    ------ ---- ------------- -----
    -
        --- -------- - --- -- -----

        -- ------
        -
            --- -------- - --- -- ----
        -

        -- ---------------------------- -- -----------------
    -
-

控制流语句

控制流语句用于改变程序执行的顺序。C#提供了多种控制流语句,包括条件语句和循环语句。

条件语句

if 语句

if语句允许根据条件执行不同的代码块。

-- -------------------- ---- -------
--- ------ - ---

-- ------- - --
-
    ------------------------- -- ------------
-
---- -- ------- - --
-
    ------------------------- -- ------------
-
----
-
    ------------------------- -- --------
-

switch 语句

switch语句用于基于一个表达式的值执行不同的代码块。

-- -------------------- ---- -------
--- --------- - --

------ -----------
-
    ---- --
        ----------------------------
        ------
    ---- --
        -----------------------------
        ------
    ---- --
        -------------------------------
        ------
    --------
        ------------------------ ------
        ------
-

循环语句

while 循环

while循环会重复执行一段代码,直到给定的条件不再满足。

do-while 循环

do-while循环类似于while循环,但它至少会执行一次循环体内的代码。

for 循环

for循环适用于已知迭代次数的情况。

foreach 循环

foreach循环用于遍历集合中的每个元素。

方法

方法是执行特定任务的一段代码。它们可以接受参数并返回结果。

定义方法

定义方法时,需要指定返回类型、方法名以及可能的参数列表。

调用方法

可以通过方法名和传递适当的参数来调用方法。

参数

C#支持多种参数类型,包括值参数、引用参数和输出参数。

值参数

默认情况下,参数按值传递,这意味着方法接收到的是原始值的一个副本。

引用参数

通过使用ref关键字,参数可以按引用传递,这样方法可以直接修改原始变量。

输出参数

out参数允许方法返回多个值。这些参数必须在调用方法之前初始化。

-- -------------------- ---- -------
---- ------------- --- -- --- --- --
-
    - - --
    - - --
-

--- -- --
------------- -- --- ---
------------------------ ------ -- ----- -

数组

数组是存储一组相同类型数据的容器。

创建数组

创建数组的方法有两种:使用数组字面量或者指定大小。

访问数组元素

可以使用索引来访问数组中的元素。

多维数组

多维数组可以用来表示矩阵或其他多维度的数据结构。

-- -------------------- ---- -------
------ ------ - --- ------ ---

--------- -- - --
--------- -- - --
--------- -- - --
--------- -- - --
--------- -- - --
--------- -- - --
--------- -- - --
--------- -- - --
--------- -- - --

数组操作

C#提供了许多内置方法来处理数组,例如排序和搜索。

类与对象

类是对象的蓝图,而对象则是类的实例。类定义了对象的状态和行为。

定义类

使用class关键字定义一个新的类。

-- -------------------- ---- -------
------ ----- ------
-
    ------ ------ ---- - ---- ---- -
    ------ --- --- - ---- ---- -

    ------ ---- ----------
    -
        -------------------------- -- ---- -- ------ --- - -- ----- ----- -------
    -
-

创建对象

通过使用new关键字和类的构造函数来创建对象。

构造函数

构造函数是在创建对象时自动调用的方法。它们通常用于初始化对象的属性。

-- -------------------- ---- -------
------ ----- -------
-
    ------ ------ ---- - ---- ------- ---- -
    ------ --- ----- - ---- ------- ---- -

    ------ -------------- ----- --- ------
    -
        ---- - -----
        ----- - ------
    -
-

------- ------- - --- ---------------- ----

继承

继承允许一个类从另一个类派生,从而继承其属性和方法。

-- -------------------- ---- -------
------ ----- ------- - ------
-
    ------ ------ ------- - ---- ---- -

    ------ ---- -------
    -
        --------------------- ----- -------------
    -
-

------- ------- - --- ----------
------------ - ---- -------
----------- - ---
--------------- - -------

------------------- -- -------------
---------------- -- -------------

接口

接口定义了一组方法和属性,但不提供实现。实现接口的类必须提供接口所声明的所有成员的实现。

-- -------------------- ---- -------
------ --------- -------
-
    ---- ------------
-

------ ----- --- - -------
-
    ------ ---- -----------
    -
        ---------------------------
    -
-

------ ----- --- - -------
-
    ------ ---- -----------
    -
        ---------------------------
    -
-

--- --- - --- ------
--- --- - --- ------

---------------- -- --------
---------------- -- --------

异常处理

异常处理允许程序在发生错误时优雅地处理问题,而不是崩溃。

try-catch 结构

使用try-catch结构捕获和处理异常。

finally 块

finally块确保某些代码在任何情况下都会被执行,即使发生了异常。

-- -------------------- ---- -------
---
-
    --- ------ - -- - --
-
----- ---------------------- ---
-
    ------------------------- ------ -- --------
-
-------
-
    -------------------------- ----- ------------
-

throw 关键字

使用throw关键字可以手动抛出异常。

-- -------------------- ---- -------
------ ---- ------------ ----
-
    -- ---- - --
    -
        ----- --- -------------------------------- ------ -- ------------
    -
-

-------------

总结

这一章涵盖了C#的基本语法,包括变量与数据类型、控制流语句、方法、数组、类与对象以及异常处理。掌握了这些基本概念后,你将能够编写更复杂和功能丰富的C#程序。接下来,我们可以进一步探讨更多高级主题,如泛型、委托和事件等。

上一篇: C# 程序结构
下一篇: C# 数据类型
纠错
反馈