C#基础知识(一)

一、C#程序结构

《1》命名空间的声明(namespace declaration)

《2》一个class

《3》class方法

《4》class属性

《5》一个main方法

《6》语句(statements)&表达式(Expressions)

《7》注释
注:C#文件的后缀为.cs
二、C#的基本语法

《1》using关键词 using system;

《2》class关键词 class关键字用于声明一个类

《3》C#中的注释,注释用于解释代码,编译器会忽略

多行注释/**/ //

《4》成员变量:变量是类的属性或数据成员,用于存储数据

eg:double length; double width;

《5》成员函数:函数是执行一系列指定任务的语句,类的成员函数是在类内声明的。

eg:public double GetArea(){

return length*width;

}

《6》实例化一个类

ExecuteRectangle包含Main()方法和实例化Rectangle类的类;

csharp 复制代码
eg:class ExecuteRectangle
{
static void  Main(string[] args)
{
     Rectangle r=new Rectangle();
     r.Display();
}
}

《7》标识符:用来识别类,变量函数或任何其他的用户定义的项目,在C#中类的命名必须遵循以下六点;

csharp 复制代码
《1》标识符必须以字母,下划线或者@开头,后面可以跟一系列的字母;
《2》标识符的第一个字符不能是数字。
《3》标识符必须不包含任何嵌入的空格和符号。
《4》标识符不能是C#关键字除非他们有一个@前缀。
《5》标识符必须区分大小写。
《6》不能与C#类库的名称相同。

《8》C#关键字:关键字不能用作标识符,但是如果你想使用这些关键字作为标识符,可以在关键字前面加上@字符作为前缀;
三、C#数据类型

C#数据类型分为三种:值类型,引用类型,指针类型;

**如果需得到一个类型或者一个变量在特定平台上的准确尺寸,才可以使用sizeof方法;

表达式(sizeof(type))产生以字节为单位存储对象或类型的存储尺寸;

csharp 复制代码
值类型:
bool ,byte,char,decimal,double,float等等。
csharp 复制代码
当一个值类型转换为一个引用类型的时候---装箱
当一个对象转换为值类型时候-----拆箱

四、C#运算符

++a先进行自增运算在赋值;

--a先进行自减运算在赋值;

csharp 复制代码
A=20  B=10
+  A+B=30;
-  A-B=10;
*  A*B=200;
/  A/B=2;
%  A %B=0;取模运算,先除后取余;
++ A++=21 自增运算,整数后加一;
-- A--=19 自减运算,整数后减一;

其它运算符:

csharp 复制代码
sizeof()返回数据类型的大小 sizeof(int) 4
typeof()返回class的类型  typeof(StreamReader)
&返回变量的地址 &a;将得到变量的实际地址
*变量的指针   *a;将指向一个变量
?:条件表达式  如果条件为真?则为x:否则为y
is判断对象是否为某一类型   if(Ford is Car)检查car是否是Car类的一个对象。
as  强制转换即使转换失败也不会抛出异常。

C#中的运算优先级

右括号先括号,后乘除在加减,然后位移在关系,逻辑完后条件最后一个逗号;
五、C#判断

csharp 复制代码
《1》if语句
《2》if...else语句
《3》嵌套if语句
《4》switch语句
《5》嵌套switch语句
csharp 复制代码
《1》while循环
《2》for/foreach循环
《3》do...while循环
《4》嵌套循环

循环控制语句

《1》break:终止loop或者switch语句,程序流将继续执行紧接着loop或者switch的下一条语句;

《2》Continue:跳过本轮循环开始下一轮循环;

六、封装

封装被定义为把一个或者多个项目封闭到一个物理的或者逻辑的包中,封装是为了防止对实现细节的访问。

抽象和封装是面向对象程序设计的相关特性,封装使开发者实现所需级别的抽象,抽象允许相关信息可视化,C#封装根据具体的需要,设置使用者的权限,并且通过访问修饰符来实现。

相关推荐
隐积5 小时前
3.1.7.Qt容器大家族(3):QVariant——万能盒子
开发语言·qt
名字还没想好☜8 小时前
Next.js ‘use client‘ 到底加在哪:Server/Client Components 边界与常见报错
开发语言·前端·javascript·react·next.js
初级代码游戏9 小时前
iOS开发 Swift 速记1:变量和基本数据类型
开发语言·ios·swift
海盗12349 小时前
微软技术周报 ——2026-08-03
后端·python·microsoft·c#·.netcore
酷在前行10 小时前
【R生态】PERMANOVA 进阶实战:距离选择、PERMDISP、两两比较与受限置换(保姆级教程)
开发语言·r语言
cxr82810 小时前
Graphify vs GitNexus vs CodeGraph — 三工具架构深度对比
开发语言·架构·知识图谱
废弃的小码农11 小时前
功能测试--Day07--Python编程基础
开发语言·python
fengci.12 小时前
Microweber CMS 未授权路径穿越漏洞(CVE-2026-65694)
android·开发语言·前端·学习·php
程序员zgh12 小时前
C++ 拷贝赋值运算符 详解
c语言·开发语言·c++
念何架构之路12 小时前
restartmanager-重启管理子系统
java·开发语言