封装对象的原理

继承性

多态性

接口

 

  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的

    posted on 2010-03-21 18:28  kuning的程序博客  阅读(184)  评论(0编辑  收藏  举报