C# 基本语法详解:从面向对象到 C# 9 顶级语句一文入门

好,这一篇我帮你整理成一篇可直接发布到 CSDN 的完整技术文章 ,结构清晰、语言偏教程向,适合C# 入门 + 语法总览 ,也顺带把 C# 9 的顶级语句讲明白。

你可以 原样复制发布,或者我后面再帮你改成「更偏博客风 / 更偏新手 / 更偏面试」版本。


C# 基本语法详解:从面向对象到 C# 9 顶级语句一文入门

在 .NET 技术体系中,C# 是一门以面向对象为核心的现代编程语言,被广泛应用于 Web 开发、桌面应用、微服务、游戏(Unity)等多个领域。

本文将从一个最经典的 Rectangle(矩形)示例 入手,系统讲解 C# 的基本语法结构,并逐步扩展到 关键字、标识符规则 以及 C# 9.0 引入的顶级语句(Top-Level Statements),帮助你快速建立对 C# 的整体认知。


一、面向对象的基本概念

C# 是一门面向对象编程语言(OOP)。

在面向对象思想中:

  • 程序由 对象(Object) 组成

  • 对象由 类(Class) 定义

  • 类包含

    • 属性 / 成员变量(Field)
    • 行为 / 成员方法(Method)

例如,一个 Rectangle(矩形)对象,通常具有:

  • 属性:长度(length)、宽度(width)
  • 行为:计算面积、显示信息

二、Rectangle 示例:C# 基本语法全景示例

下面是一个完整的 C# 示例程序:

csharp 复制代码
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();
        }
    }
}

程序运行结果

text 复制代码
Length: 4.5
Width: 3.5
Area: 15.75

三、using 关键字:引入命名空间

csharp 复制代码
using System;
  • using 用于 引入命名空间
  • 命名空间中包含了大量类和方法
  • System 是最常用的基础命名空间之一,包含 Console、String、Math 等

👉 一个程序中可以包含 多个 using 语句


四、class 关键字:定义类

csharp 复制代码
class Rectangle
{
}
  • class 用于声明一个类

  • 类是对象的蓝图

  • 一个类可以包含:

    • 成员变量
    • 成员方法
    • 构造函数
    • 属性等

五、C# 中的注释

1️⃣ 单行注释

csharp 复制代码
// 这一行是注释

2️⃣ 多行注释

csharp 复制代码
/* 
   这个程序演示
   C# 的注释使用
*/

注释只用于解释代码,不会参与编译


六、成员变量(字段)

csharp 复制代码
double length;
double width;
  • 成员变量用于存储对象的状态
  • 定义在类内部、方法外部
  • 默认访问级别为 private

七、成员函数(方法)

csharp 复制代码
public double GetArea()
{
    return length * width;
}
  • 方法是执行特定功能的一组语句

  • 方法可以:

    • 接收参数
    • 返回结果
  • 示例中包含:

    • Acceptdetails():初始化数据
    • GetArea():计算面积
    • Display():输出结果

八、类的实例化

csharp 复制代码
Rectangle r = new Rectangle();
  • 使用 new 关键字创建对象
  • r 是 Rectangle 的一个实例
  • 通过实例调用成员方法

九、标识符命名规则

标识符用于命名:

  • 类
  • 变量
  • 方法
  • 命名空间等

基本规则

  • 以 字母、下划线 _ 或 @ 开头
  • 不能以数字开头
  • 不能包含空格或特殊符号
  • 区分大小写
  • 不能是 C# 关键字(除非加 @)

✅ 合法示例:

csharp 复制代码
int age;
string user_name;
int @class;

❌ 非法示例:

csharp 复制代码
int 1number;
string user-name;

十、C# 关键字

1️⃣ 保留关键字(部分)

text 复制代码
class   public   private   static   void
int     string   if        else     for
return  new      using    namespace

这些关键字 不能作为标识符


2️⃣ 上下文关键字(Contextual Keywords)

text 复制代码
get   set   from   select   where
partial   add   remove

它们只在特定语法上下文中有特殊含义。


十一、C# 9.0:顶级语句(Top-Level Statements)

从 C# 9.0 开始,引入了 顶级语句,大幅简化程序结构。


1️⃣ 传统写法(C# 9 之前)

csharp 复制代码
using System;

namespace MyApp
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello, World!");
        }
    }
}

2️⃣ 顶级语句写法

csharp 复制代码
using System;

Console.WriteLine("Hello, World!");

✔ 编译器会 自动生成 Main 方法

✔ 文件本身成为程序入口


十二、顶级语句的完整示例

csharp 复制代码
using System;
using System.Linq;

// 变量声明
int number = 42;
string message = "The answer to life, the universe, and everything is";

// 输出
Console.WriteLine($"{message} {number}.");

// 方法定义
int Add(int a, int b) => a + b;
Console.WriteLine($"Sum of 1 and 2 is {Add(1, 2)}.");

// LINQ
var numbers = new[] { 1, 2, 3, 4, 5 };
var evens = numbers.Where(n => n % 2 == 0);
Console.WriteLine(string.Join(", ", evens));

// 异常处理
try
{
    int result = number / 0;
}
catch (DivideByZeroException ex)
{
    Console.WriteLine("Error: " + ex.Message);
}

十三、顶级语句的注意事项

  • 一个项目 只能有一个 顶级语句文件

  • 使用顶级语句后,不能再手写 Main

  • 所有顶级语句共享同一作用域

  • 更适合:

    • 小工具
    • 示例程序
    • 学习 / 教学代码

十四、总结

  • C# 是一门 强类型、面向对象、现代化 的语言

  • 类、对象、方法、命名空间是核心基础

  • C# 9 的顶级语句:

    • 降低学习门槛
    • 提升开发效率
    • 适合快速开发

📌 建议学习路线 :

C# 基本语法 → OOP 三大特性 → 委托 / 事件 → LINQ → 异步 async/await → ASP.NET Core

相关推荐
2401_885885045 小时前
国际语音C#接口怎么写?.NET环境下实现国际语音验证码批量下发
开发语言·c#·.net
淡海水11 小时前
07-03-源码-.NET Core GC标记与扫描
unity·c#·.netcore·gc
波力海苔夹心脆67511 小时前
C# string 字符串方法大全:判空、查找、截取、分割、替换一篇讲透
经验分享·c#·.net·字符串·string·入门教程
阿松爱学习1 天前
【Unity开发】Unity长截图功能实现
unity·c#·游戏引擎
_oP_i1 天前
Windows 11 家庭中文版 25H2
c#
unicrom_深圳市由你创科技1 天前
电池化成曲线MES追溯:关键点提取与验证
c#
老王IT1 天前
C#语言基础语法介绍
开发语言·c#
人丰1 天前
一次生产卡顿复盘:BI 数据抽取引发 PostgreSQL 长事务事故
数据库·c#
淡海水1 天前
07-01-源码-.NET Core GC总览与架构
unity·架构·c#·.netcore·gc
weixin_416660071 天前
Mermaid流程图导出到Word:SVG、PNG与清晰度如何选择?
开发语言·c#