C#学习历程(五)--面向对象基础

面向对象是一种编程思想,其思想上在于一切皆为对象。对象是现实世界的一种事物的映射它从类型中创建表示该类型的实例。类型和对象有区别类型是一类事物的模版集中了这类事物的通用属性,而对象是类型的实例是事物的一个个体。

一、封装

封装就是将抽象得到的数据和行为相结合现成一个统一的整体形成类其中数据和函数都是类的成员。

1.类:类是面向对象中最基础的封装类型,并且可以专门创建抽象类用于继承。类通过访问修饰符来控制类的可访问范围

2.结构:与类非常的类似最主要区别在于结构是一种值类型

3.接口:他定义了一个约定,可以被类或者结构实现。接口中包括方法、属性、索引器和事件作为成员,接口不提供它所定义的成员的实现它只定义实现该接口的类和结构必须提供的成员。

二、继承

类继承它的直接基类的成员意味着类隐式地把它的直接基类的所有成员当作自己的成员(基类中的构造函数和析构函数不被继承)

·继承是可以传递的。如果C从B派生,而B从A派生,那么C就会继承在B中声明的成员又继承A中声明的成员(但C#中类只支持单继承可以继承多个接口)

·派生类扩展它的直接基类。派生类可以向他继承的成员添加新成员,但是它不能移除继承成员的定义

·构造函数和析构函数是不可继承的。其他所有成员是可继承的无论它们所声明的可访问性如何但是根据其可访问性有些继承成员在派生类中无法访问

·派生类可以通过声明具有相同名称或者签名的新成员来隐藏这个被继承的成员(注意隐藏继承成员并不移除该成员而只是使隐藏的成员在派生类中不可直接访问)

类实例含有在该类中及他的所有基类中声明的所有实例字段的集合,并存在一个从派生类类型到它的任意一个基类类型的隐式转换。因此可以将对某个派生类实例的引用视为对它的任一个基类实例的引用

·类可以声明虚拟方法、属性和索引器,而派生类可以重写这些函数成员的实现。这使类展示出多态性行为特征即同一个函数成员调用所执行的操作可能是不同的这取决于用来调用该成员的实例的运行时类型

三、多态

多态是接口的多种不同的实现方式。多态性是允许你将父对象设置成为和一个或多个的他的子对象相等的技术,赋值后,父对象可以根据当前赋值个他的子对象的特性以不同的方式运作。

转载于:https://www.cnblogs.com/redher/archive/2013/02/23/2923433.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值