C#学习-面向对象概念
面向过程:面向的是完成这件事的过程,强调的是完成这件事的动作
如果我们用面向过程的思想解决问题,当执行人不同时,需要为每个人量身定做解决事情的方法
面向对象:找个对象完成过程
面向对象意在找到一个通用的代码,屏蔽差异
通过描述对象的属性和方法来描述对象
对象必须是看得见摸得着的
我们把具有相同属性和相同方法的对象进行进一步的封装,抽象出来,抽象出来类这个概念
类就是个模子,确定了对象应该具有的属性和方法
对象是根据类创建出来的
类
语法:
public class 类名
{
字段;
属性;
方法;
}
写好了一个类后,我们需要创建这个类的对象,那么,我们管创建这个类的对象过程称之为类的实例化——使用关键字new
this代表当前类的对象
类是不占内存的,而对象是占内存的
属性
属性的作用就是保护字段、对字段的赋值和取值进行限定
属性的本质就是两个方法:get和set
set赋值get取值,既有set又有get为可读可写属性,只有get为只读属性,只有set为只写属性
访问修饰词
public:公开的公共的,哪都能访问
private:私有的,只能在当前类的内部访问,出了类就访问不到了
对象的初始化
当我们创建好一个类的对象后,需要给这个对象的每个属性去赋值,我们称这个过程为对象的初始化
静态和非静态的区别
-
在非静态类中,既可以有实例成员,也可以有静态成员
-
在调用实例成员的时候,需要使用对象名.实例成员;
在调用静态成员的时候,需要使用类名.静态成员
-
静态函数中,只能访问静态成员,不能访问实例成员
-
实例函数中,既可以使用静态成员,也可以使用实例成员
使用:
-
如果你想要你的类当做一个"工具类"去使用,这个时候可以考虑将类写成静态的
-
静态类在整个项目中资源共享
只有在程序结束后,静态类才会释放资源
构造函数
作用:帮助我们初始化对象(给对象的每个属性依次的赋值)
构造函数是一个特殊的方法:
-
构造函数没有返回值,连void也不能写
-
构造函数的名称必须跟类名一样
创建对象的时候会调用构造函数
构造函数可以重载
类当中会有一个默认的无参数的构造函数,当你写一个新的构造函数,无论该函数有参还是无参,原有的默认的无参的构造函数都会被删除
new
new帮助我们做了三件事:
-
在内存中开辟了一个空间
-
在开辟的空间中创建对象
-
调用对象的构造函数进行初始化对象
this
-
代表当前类的对象
-
在类当中显示的调用本类的构造函数——:this
-

浙公网安备 33010602011771号