c#面向对象的三大特性

封装:

他的定义是把一个或多个项目封闭在一个物理的或者逻辑的包中。

c#的封装根据具体的需要,来设置使用者的访问权限,并且通过我们的访问修饰符来实现。

c#支持的访问修饰符:

public:所有的对象都可以访问,他就好比公司的董事会具有最高的权利,因此public开放性最大,

不管是否在同一个程序集或者是否继承,都可以访问。

protected:类似于公司业务部门的经理,具有对本部门的管辖权,在面相对象中就体现为子类继承

这种纵向关系的访问约定,也就是只要继承了该类,则其对象就有访问父类的权限。

internal:它类似于公司的职能部门职责,不管是否具有上下级的隶属关系,人力资源部都能管辖

所有其他部门的员工考勤,在面向对象中用来表示同一程序集的访问权限,只要在同一程序集内对象都可访问其属性,不管是否存在隶属关系。

protected internal:他就像公司掌管职能部门的副总,在面向对象中它可以访问限于当前程序集或派生自包含类的类型。

private:具有最低的访问权限,就像公司的一般员工,管好自己就可以了,因此,在面向对象中它的开放性最小。只能在对象本身的内部可以访问。

继承:

这个是我们面向对象程序设计中最重要的概念之一。就是子类实现父类的属性和方法,并在此基础上进行相关的扩展。

多态:

多态性意味着有多重形式。在面向对象编程范式中,多态性往往表现为"一个接口,多个功能"。
多态性可以是静态的或动态的。在静态多态性中,函数的响应是在编译时发生的。在动态多态性中,函数的响应是在运行时发生的。
在 C# 中,每个类型都是多态的,因为包括用户定义类型在内的所有类型都继承自 Object。
在 C#语言中体现多态有三种方式:虚方法,抽象类, 接口。

虚方法:在父类中使用virtual关键字修饰的方法就是虚方法,而在子类中我们可以使用override关键字对该虚方法重写。

抽象类:使用关键字 abstract 创建抽象类,用于提供接口的部分类的实现。当一个派生类继承自该抽象类时,实现即完成。抽象类包含抽象方法,抽象方法可被派生类实现。派生类具有更专业的功能。

接口:这个是指一组函数成员而不实现成员的引用类型,其他类型和接口可以继承接口。

我们一般声明接口首字母用I来写,这也是区分接口和类的区别。

接口是一个引用类型,通过接口我们可以实现多重继承


 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值