您的位置:首页 > 编程语言 > C#

C#基础知识

2017-09-18 22:45 525 查看
解决方案的组成部分

文件后缀名含义
.Sln:解决方案
.csproj:项目文件项目
.cs:类文件类文件中的C#代码
解决方案包含项目文件,项目文件包含cs文件。

C#程序结构

代码含义
using System;引用命名空间
namespace DemoOne;项目名或者命名空间
Class name{}
static void Main(String[] args){}程序主入口或是Main函数
空间命名的别名+输出语句

using mmkj = System.Console;
namespace nn{
class c{
static void Main(String[] args){
Console.WriteLine("正常输出");
mmkj.WriteLine("使用别名输出");
}
}
}


标识符

例如 String username;

区分大小写。

大小字母,数字,下划线组成,不能以数字开头。

想使用关键字作为标识符,需要在前面加”@”。

winForm程序

文件目录分析

文件存放
binexe程序和pdb调试程序
objdebug子目录,含有编译过程中产生的中间代码
properties包含AssemblyInfo.cs文件,此文件包含程序集属性的设置,创建项目时自动添加的。
App.config资源文件,存放字符串、图标等
Form1.cs窗体代码
Form.Designer.cs面板控件的生成和显示
Program.cs应用程序代码
WinForm1.csproj项目文件
窗体显示窗口和窗体控件代码快速切换

1. 在窗体显示窗口,按F7查看

2. 在窗体控件代码,按shift+F7切换

Winform界面分析

//partial 分布类
//当前类继承 System.Windows.Forms.Form类
public partial class Form1 : Form{}


查看源代码

选中代码,按F12进行查看

操作窗体

点击项目名,右键->添加->新建项->窗体。

点击Form.cs文件,删除即可。

窗体属性

属性名含义
BackColor背景色
BackgroundImage背景图片
Cursor鼠标形状
HelpButton帮助按钮,不能与最大化、最小化同时存在
Icon图标
MainMenuStrip主菜单
MaximumBox最大化
MaximumSize最大化时窗体大小(0,0)x,y像素
MinimumBox最小化
MinimumSize最小化时窗体大小(0,0)x,y像素
Name唯一标示名
ShowIcon是否显示图标
ShowInTaskbar是否在任务栏显示
Size窗体大小
Text标题
StartPosition启动时,窗体显示的位置
TopMost是否居顶显示,不被别的窗体挡住
如果不希望用户更改窗体大小,就将最大化与最小化的值设置为相同。

常量

//常量必须在声明的同时赋值
const int a = 1;


*转义字符 反斜杠:*

Console.WriteLine("我\n好");


使转义字符失效

Console.log(@"我\n是");


字符串换行

String str = @"select * from user
where name = 'zichen' ";
Console.WriteLine();


数据类型

值类型:int a = 1; 存储在栈中

引用类型:String s = “你”; 存储在堆中

整数类型

数据类型说明值范围对应System程序集中的结构
sbyte有符号8位整数-128~127SByte
byte无符号8位整数0~255Byte
short有符号16位整数-32768~32767Int16
ushort无符号16位整数0~65535UInt16
Int有符号32位整数-2147489648~2147483647Int32
UInt无符号32位整数0~42994967295UInt32
long有符号64位整数-2的63次方~2的63次方Int64
ulong无符号64位整数0~2的64次方UInt64
浮点类型

数据类型说明取值范围适用范围
float32位单精度实数1.5*10的-45次方~3.4*10的38次方不常用
double64位双精度实数5.0*10的-324次方~1.7*10的308次方常用
demcimal128位十进制实数1.0*10的-28次方~7.9*10的28次方适用于财务
布尔类型

占用4个字节,32位在存储空间,不能用0和1代替。

字符类型

char类型

每个字符对象与Unicode字符集的字符相对应。

引用类型

字符串

1. 字符串的不可变性,当一个变量被重新赋值时,原来的值并没有被销毁,而是重新开辟一块新的存储空间。当程序结束后,GC扫描整个内存,如果发现有的空间没有被指向,则立即被销毁。

2. 字符串可以看做时char类型的一个只读数组。

读取控制台输入数据以及在控制台输出数据

Console.WriteLine("你喜欢什么水果啊?");
String fruit = Console.ReadLine();
if ("香蕉".Equals(fruit)) {
Console.WriteLine("这么巧,我也喜欢"+fruit);
}else{
Console.WriteLine("我不喜欢。");
}


使用数组下标的方式将值传输到输出语句中,将多个变量按顺序在输出语句后面排序

String name = "紫宸";
int age = 21;
String sex = "先生";
Console.WriteLine("尊敬的{0}{1},您好,您今年{2}岁了?这么年轻就做董事长了啊?鄙人佩服佩服!",name,sex,age);
Console.ReadKey();


运算符

运算符描述实例
+-*/二元普通运算
+一元var1= +var2;var2乘以1
-一元var1= -var2;var2乘以-1
++一元++在前先加后用,++在后先用后加
一元–在前先加后用,–在后先用后加
< <= > >=
二元关系运算符
= += -= *= /= %=>>= <<= &= ^= |=
二元赋值运算
sizeof()返回改数组类型占用的字节数sizeof(int);返回4
typeof()返回class的类型typeof(StreamReader);
&返回变量的地址&a;获得变量的实际地址
*变量的指针*a将指向一个变量
条件表达式var1?true:false;
is判断对象是否是某一类型if(Person is Car)//检查Person是否是Car类
as强制类型转换,即使转换失败也不会抛出异常Object obj = new StringReader(“hello”);StringReader sr = obj as StringReader;
顺序

类别运算符结合性
后缀
() [] -> . ++ - -
从左到右
一元
+ - ! ~ ++ - - (type)* & sizeof
从右到左
乘除
* / %
从左到右
加减
+ -
从左到右
移位
<< >>
从左到右
关系
< <= > >=
从左到右
相等
== !=
从左到右
位与
AND    &
从左到右
位异或
XOR   ^
从左到右
位或
OR     |
从左到右
逻辑与
AND   &&
从左到右
逻辑或
OR    ||
从左到右
条件
?:
从右到左
赋值
= += -= *= /= %=>>= <<= &= ^= |=
从右到左
逗号
,
从左到右
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c# 解决方案 class