C#方法(九)
方法的构成方法主要有两部分:方法头和方法体。 123456789101112131415//返回类型,方法名称,参数列表int MyMethod(int par1, string par2);static void Main(){ //局部变量,初始化为3 int MyInt = 3; //控制流结构 while(myInt > 0) { --myInt; //方法调用 printMyMessage(); }} 局部变量 对比维度 实例字段 局部变量 生存期 从实例被创建时开始,直到实例不再被访问时结束 从它在块中被声明的那一刻开始,在块完成执行时结束 隐式初始化 初始化成该类型的默认值 没有隐式初始化。如果变量在使用之前没有被赋值,编译器就会产生一条错误消息 存储区域 由于实例字段是类的成员,所以所有字段都存储在堆里,无论它们是值类型的还是引用类型的 值类型:存储在栈里引用类型:引用存储在栈里,数据存储在堆里 类型推断与var关键字var关键字并不是表示特殊变量。只是语法上的速记,表示任何可以从初始化语句...
C#类(八)
随着面向对象的出现,焦点从优化指令转移到组织程序的数据和功能上。程序的数据和功能被组织为逻辑上相关的数据项和函数的封装集合,并被称为类。类是一个能存储数据并执行代码的数据结构。包含数据成员和函数成员。 数据成员存储数据 函数成员执行代码 字段常量 方法属性构造函数析构函数运算符索引器事件 声明类类的声明定义新类的特征和成员。它并不创建类的实例,但创建用于创建实例的模板,类的声明提供以下内容: 类的名称 类的成员 类的特征 1234class MyExcellentClass{ //成员声明} 类的成员字段和方法是最重要的类的成员类型。字段是数据成员,方法是函数成员。 字段与c和c++不同,c#在类型的外部不能声明全局变量。所有的字段都属于类型,而且必须在类型声明内部声明。 1234567class MyClass{ int F1; //初始化为默认值0 string F2; //初始化为null int F3 = 25; int F4,F5 = 25; //声明多个字段} 方法12345...
C#结构、枚举与数组(七)
数组12345678<baseType> [] <name>;<baseType> [] <name> = new <baseType> [ArraySize] {..,..,...}; int[] arr2 = new int[4];MyClass[] mcArr = new MyClass[4];int[,,] arr3 = new int[3,6,2];int[] intArr = new int[] {10, 20, 30, 40};int[,] intArray2 = new int[,] {{10, 1}, {2, 10}, {11, 9}}; ![[csharp-7-array.png]] foreach语句1234foreach (<baseType> <name> in <array>){ //can use <name>...
C#控制流语句(六)
条件执行语句if语句12345678if (<test>){ <code executed if <test> is true>;}else{ <code executed if >test> is false>;} if…else语句123456789101112if (var1 == 1){ // Do somthing}else if (var1 < 1){ // Do somthing}else{ // Do somthing} 123456789101112131415if (var1 == 1){ // Do somthing.}else{ if (var < 1) { // Do somthing } else { // Do somthin...
C#表达式与运算符(五)
字面量整数字面量 十六进制(hex),数字范围(0-F),必须以0x或0X开始。 二进制,数字范围(0或者1),必须以0b或0B开始。 后缀 整数类型 备注 无 int、uint、long、ulong — U、u uint、ulong — L、l long、ulong 不推荐使用小写字母l,因为它很容易和数字1弄混 ul、uL、Ul、UL、lu、Lu、lU、LU ulong 不推荐使用小写字母l,因为它很容易和数字1弄混 实数字面量 后缀 实数类型 无 double F、f float D、d double M、m decimal 无后缀的实数字面量是double类型,不是float类型。 字符字面量 名称 转义序列 十六进制编码 空字符 \0 0x0000 警告 \a 0x0007 退格符 \b 0x0008 水平制表符 \t 0x0009 换行符 \n 0x000A 垂直制表符 \v 0x000B 换页符 \f 0x000C 回车符 \r 0x000D 双引号 “ 0x0022 ...
C#类型、存储与变量(四)
类型预定义类型C#提供了16种预定义类型,其中包括13种简单类型和3种非简单类型。 ![[csharp-4-var-type.png]] 预定义简单类型 名称 含义 范围 .NET 框架类型 默认值 sbyte 8 位有符号整数 -128~127 System.SByte 0 byte 8 位无符号整数 0~255 System.Byte 0 short 16 位有符号整数 -32 768~32 767 System.Int16 0 ushort 16 位无符号整数 0~65 535 System.UInt16 0 int 32 位有符号整数 -2 147 483 648~2 147 483 647 System.Int32 0 uint 32 位无符号整数 0~4 294 967 295 System.UInt32 0 long 64 位有符号整数 -9 223 372 036 854 775 808~9 223 372 036 854 775 807 System.Int64 0 ulong 64 位无符号整数 0~18 446 744...
C#编程概述(三)
C#示例1234567891011121314151617//SimpleProgram.csusing System; //注释:引入命名空间using System.Collections.Generic;using System.Linq;using System.Text;namespace Simple{ class Program //Program类 { static void Main(string[] args) //Main方法 { Console.WriteLine("Hello World!"); Console.ReadKey(); } }} 标识符标识符是一种字符串,用来命名变量,方法,参数等其他程序结构。命名规则:C#基本语法|标识符 标识符必须以字母、下划线或@开头,后面可以跟一系列的字母、数字(0-9)、下划线(_)、@。 标识符中的第一个字符不能是数字。 ...
C#与.NET框架(二)
.NET Framework简介早期的Windows编程有许多分支,有用Win32 API的,有用MFC(Microsoft Foundation Class,微软基础类库)的,还有用COM(Component Object Model,组件对象模型)。 然而这些技术都有自己的问题,纯Win32 API不是面向对象的,工作量大,MCFC是面向对象的,但它不一致且逐渐陈旧,COM虽然概念简单,但实际代码复制,且需要丑陋,不雅的底层基础代码。 .NET Framework是Microsoft为开发应用程序而创建的一个具有革命意义的平台。 多平台,可以运行在多个操作系统上:Windows,Linux, macOS 未限制应用程序的类型:桌面应用程序、Windows桌面应用程序(UWP)、云/Web应用程序、Web API、其他各种类型的应用程序 对于Web、云和Web API应用程序,按照定义是多平台的应用程序,因为任何带有Web浏览器的系统都可以访问 可以用于各种语言:C#, C++, F#, JavaScript, Visual Basic, COBOL及其他旧语言 .NET ...
C#编程系列说明(一)
打算把最近学习的C#编程知识进行一个总结,主要学习途径来源: SiKi学院C#编程基础的视频C#编程-第一季 《C#入门经典(第八版)》的pdf 《C#图解教程(第五版)》的pdf 一些常用的资料链接C#菜鸟教程: https://www.runoob.com/csharp/csharp-tutorial.html C#语言微软官方文档: https://learn.microsoft.com/zh-cn/dotnet/csharp/tour-of-csharp/ 工具与配置Visual Studio 2019 字体推荐:JetBrains Mono\ConsolasJetBrains Mono字体下载 思维导图工具:Xmind,ProcessOn,百度脑图 vs2019里常用的快捷键 Home键和End键,将光标定位到一行的开头和结尾。 Ctrl+a(全选) Ctrl+s(保存) Ctrl+z(取消回退操作) Ctrl+x(剪切) Ctrl+c(复制) Ctrl+v(粘贴) F5(调试) Ctrl+F5(不调试执行) Ctrl + K, Ctrl + F (格式化当前行&...
使用hexo+nginx服务器搭建个人博客
系统基础依赖安装(先执行)我的版本是Ubuntu 26.04 LTS,打算使用NVM安装Hexo 8。 12345#查看linux版本uname -a cat /etc/os-releaselsb_release -ahostnamectl 12345678# 更新软件源 sudo apt update && sudo apt upgrade -y # 安装 curl、git(Hexo与NVM必需) sudo apt install curl git -y# 验证版本 node -v npm -v 安装NVM(Node 版本管理器)123456789curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.5/install.sh | bash # 加载nvm到当前终端 export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" [...
