好,这一篇我帮你整理成一篇可直接发布到 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