C# 理论学习 之 面向对象设计

封装对象的原理

继承性

多态性

接口

 

  1. 封装就是类的内部成员和实现隐藏起来

好处

Ø良好的封装能够减少耦合

Ø类内部的实现可以自由地修改

Ø类具有清晰的对外接口

数据隐藏

是封装最有用的方式之一

实现方式:访问限制修饰符

Øpublic 无限制,允许任何人来访问

Øprotected internal = protected + internal

ØInternal 允许项目或程序内部的类来访问

Øprotected 继承时子类可以对基类有完全访问权

Øprivate 只允许同一个类中的成员访问

l属性和索引器也用来封装类的细节,并提供公用接口给该类的用户

  1. 继承性(inheritance)

一个类可以有能力直接从另一个类获得其代码和数据

l派生类从基类那里获得其所有的成员

lpublic class InsuranceAccount : Account

lC# 中只支持单继承,多继承可以通过接口实现同样的功能

防止继承

public sealed class XX

例:

GUI设计的Form look and feel

都是从.NET Form class

继承下来的

 

l如果Class Child是继承Class Parent而来

ØChild的对象中包含一个Parent的对象

如何访问基类成员

  1. 派生类可以调用基类的方法
  2. 通过使用base关键字
  3. 派生类在访问基类的时候有一定的限制,不能访问 private 的成员;internal的基类成员只能被同一个程序集中的派生类访问
多态
              • 编译时的多态:重载(overload):用于同一类中
                                                        • 方法名必须相同
                                                        • 参数列表必须不相同
                                                        • 返回值类型可以不相同
                                                • 运行时的多态:覆写虚成员实现(override),虚方法可以被覆写;用于继承关系的类中
                                                • 方法名必须相同
                                                • 参数列表必须相同
                                                • 返回值类型必须相同
接口

接口为类提供了蓝图,PM一级的人通常设计的时候会定义一系列的接口

客户端需要一些接口,服务器端来实现这些接口来满足客户端的需求,类似协议的功能

接口可以从多个基接口派生

接口中所有方法必须是public的

转载于:https://www.cnblogs.com/NewLand/archive/2010/03/21/1691089.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值