笔记会持续更新,有错误的地方欢迎指正,谢谢!
一、基础
0.输入输出
函数 Console.ReadLine(),用于接收来自用户的输入,并把它存储到一个变量中
Console.WriteLine(“Length: {0}”, length);//输出
Console.WriteLine(“Hello World”);//输出
1.C# 数据类型
引用类型(Reference types):指的是一个内存位置。
对象(Object)类型:当一个值类型转换为对象类型时,则被称为 装箱;另一方面,当一个对象类型转换为值类型时,则被称为 拆箱。
之前由值类型转换而来的对象类型再转回值类型
int val= 8;
object obj = val;//先装箱
int nval = (int)obj;//再拆箱
字符串(String)类型:
C# string 字符串的前面可以加 @(称作”逐字字符串”)将转义字符(\)当作普通字符对待,比如:
string str = @"C:\Windows";
//等价于:
string str = "C:\\Windows";
2.C# 类型转换
• 隐式类型转换 - 这些转换是 C# 默认的以安全方式进行的转换, 不会导致数据丢失。例如,从小的整数类型转换为大的整数类型,从派生类转换为基类。
long lnum = inum;//隐式转换,将int型数据转换为了long型的数据
Class1 c1 = new Class2();//隐式,将一个新建的Class2实例转换为其基类Class1的实例c1
• 显式类型转换 - 即强制类型转换。显式转换需要强制转换运算符,而且强制转换会造成数据丢失。
string locstr = 123.ToString();//整数转字符串
int ii = int.Parse(locstr);// 字符串转整数
Class1 c11 = new Class1();
Class2 c22 = c11 as Class2; //使用as进行显式转换
int ifromd = (int)dnum; //double类型显式转换转为int类型
3.C# 封装
封装使用 访问修饰符 来实现
public 公有访问。不受任何限制。
private 私有访问。只限于本类成员访问,子类、实例都不能访问。
protected 保护访问。只限于本类和子类访问,实例不能访问。
internal 内部访问。只能在当前项目的内部访问,出了这个项目就访问不到了!
protected internal 内部保护访问。就是protected和internal的结合 当前项目的当前类和子类才能访问
C#成员类型的可修饰及默认修饰符如下表:
成员类型 | 默认修饰符 | 可被修饰符 |
---|---|---|
enum | public | none |
class | private | public、protected、private、internal、protected internal |
interface | public | none |
struct | private | public、private、internal |