大家在工具箱里边看到的这些控件其实都是一个一个的类,我们把控件从工具箱拖到窗体中后,窗体里边的这些控件是一个一个的对象
//this本窗体的对象
1.任何类型转换为string的时候,变量调用ToString()
2.任何类型转换为任何类型 Convert.To类型
控件的显示:1置于顶层和底层 2.剪切控件方式
不管窗体还是任何一个控件 都有一个属性:ContentMenuStrip,这个属性专门用于连接右键菜单的
汽车(类) 奔驰汽车(类) 奔驰S500型汽车(类) 楼下停着那辆奔驰S500汽车(对象)
类和对象之间的一个关系 对象的产生是由类的实例化出现,对象才能够具体的调用类里面的属性和方法
类里面能放置的内容为:1.属性 2.方法 3.字段
1属性(具有get和set这两个关键字的内容称为属性)
2字段(在类里边定义的变量成为字段)
private私有(只有在自己这个类里边能够访问到,使用) 在类里边如果定义字段没有访问修饰符,那么默认的就是private
public共有(任何一个类里边都能够访问到)
自动属性(.net框架在3.5及其以上的版本才能使用)
直接写属性名,然后属性里面只写get set关键字在里面就行了
如果get set访问器里面有具体的逻辑代码,那么不能使用自动属性
属性用于控制类里边的私有字段用的,属性有两个标志,分别是set get
只含有set只写属性 只含有get只读属性
在set访问器里面,关键字value代表的是外界的值传进来
无参方法,带参方法,带返回值的方法,任何类型都可以作为方法的返回值或者参数进行操作
string int double char bool void 自定义类型(class)
输出参数---out--------主要赋值
ref--------主要修改
如果方法有static修饰,那么它跟普通有区别,调用的时候,静态方法是使用类名来调用
方法的重载 在同一个类里边,方法名相同,跟方法值的类型毫无关系,最重要的参数列表(不相同)
如果你要取检查两个方式是否是重置:
1.检查方法名(相同)
2.参数列表(不同)--------参数个数(不同)--------同位置的参数类型(不同)
方法的重置实现了面向对象(OOP)其中一大特性:多态
public void test(string a,int b)
public string test(string c,int d)
this关键字在本类里边代表本类的对象
构造函数:一个比较特殊的方法,在类型实例化的过程当中自动调用的特殊方法,构造不能显示调用(显示调用的意思是通过类名或对象名调用的方法成为显示调用)
常量-------经常不变的变量-------一旦定义赋值,那么其他地方是不能修改的
枚举------它是一个类型-----它像一道选择题,最后给出的答案结果必须是枚举所定义的内容其中的一个
rgb---red green blue (0-255)
结构可以不用实例化,直接用对象调用属性和方法,结构也可以有构造函数,但是结构不能含有无参的构造函数
c#里面把数据分为两大类型-------值数据类型(内存堆,将这个值存放),引用数据类型(内存栈,将地址存放)
结构struct属于值数据类型
类class属于引用数据类型
装箱:值类型转换为引用数据类型 int i=0;object j=i;
拆箱:引用数据类型转换为值类型 int k=(int)j;
值类型:一切数字类型(int double float) struct enum char
引用类型:string object class interface 数组 集合