[UML]UML系列——类图class的实现关系Realization
2013-11-16 12:13
253 查看
系列文章
[UML]UML系列——用例图Use Case[UML]UML系列——用例图中的各种关系(include、extend)
[UML]UML系列——类图Class
[UML]UML系列——类图class的关联关系(聚合、组合)
[UML]UML系列——类图class的依赖关系
[UML]UML系列——类图class的泛化关系
接口的概念
接口是一组没有实现的操作的集合。接口只提供操作的声明,不提供任何相应的功能代码。具体的功能代码由使用该接口的类实现,这叫做实现关系。一般意义的操作:
public void turnUp() { Console.WriteLine("{0}风扇加速转动",name); }
没有实现的操作:
public void turnUp();
c#中定义接口的方法
[可见性] interface 接口名{[返回值类型] 方法名([参数]);}
接口中只能包含方法、属性、索引器和事件的声明,没有字段和构造函数。
接口中的操作都被视为公有的,不需要添加可见性。
接口中只能提供方法的格式声明,而不能包含方法的实现,所以接口方法的声明总是以分号结束。
接口的符号
class Program { static void Main(string[] args) { animal x; x = new dog("小狗", 4); x.sound(); x = new cat("小猫", 4); x.sound(); x = new chick("小鸡", 2); x.sound(); } }
Program
从设计的角度来看,一个项目中有多个类需要去编写,由于工作量比较大,每个类可能由不同的人进行编写,比如A程序员去写Dog类,B程序员去写Cat类。这两个类本来没什么联系的,可是由于用户需要他们都实现一个关于“叫”的方法.这就要对他们进行一种约束,让他们都继承于animal接口,目的是方便统一管理,也方便调用。
当然了,不使用接口一样可以达到目的。只不过这样的话,这种约束就不那么明显,如果这样的类还有Duck类等等,比较多的时候难免有人会漏掉这样方法,所以说还是通过接口更可靠一些,约束力更强一些。(摘自互联网)
2、保持程序的可扩展性。(例如上面的例子中,如果有其他的动物类..)
3、一个类可以实现多个接口。可以在同一个类中同时实现多个接口,即实现多重继承。要实现多个接口,需将这些接口用逗号分开。
程序演示:模拟手机即可打电话又可以视频电话
public interface IPhone { void call(); }
public interface IVideo { void show(); }
实现接口:
class visualPhone:IPhone,IVideo { private string phoneName,videoName; public visualPhone(string name1,string name2) { phoneName = name1; videoName = name2; } public void call() { Console.WriteLine("{0}开始通话",phoneName); } public void show() { Console.WriteLine("{0}开始视频",videoName); } }
控制台程序:
class Program { static void callShow(IPhone x,IVideo y) { x.call(); y.show(); } static void Main(string[] args) { IPhone m = new visualPhone("步步高", ""); IVideo n = new visualPhone("", "西门子"); callShow(m, n); } }
对应的类图:
接口的特点
接口中只能包含方法、属性、索引器和事件的声明,没有字段和构造函数和析构函数、不能直接被实例化。接口不能自己实现其操作,而是由相应的类来实现。一个类可以实现多个接口。对象图(Object Diagram)
对象是类的实例,对象图也可看作是类图的实例。
对象图与类图的关系
对象图实质上是类图的实例,主要用于了解系统在某个特定时刻的具体情况,以求发现类图中的错误,进而修正类图。对象的符号
与类的图形相似,但有如下区别:
1、对象只有名称和属性两个分栏,没有操作分栏。
2、对象的名称要加下划线
3、对象的属性应有具体的值。(例如上面的对象图)
对象名的三种格式
对象图的组成
提示:对象图没有多重性,因为所有的链都是一对一的。
总结
关于类图的相关到这里已经算是结束了,下面将总结包图.....相关文章推荐
- [UML]UML系列——类图class的实现关系Realization
- 类图和对象图教程-类(Class)、接口(Interface)、协作(collaboration)、依赖关系(Dependency)、泛化关系(Generalization)、关联关系(Association)以及实现关系(Realization)
- [UML]UML系列——类图class的泛化关系
- [UML]UML系列——类图class的依赖关系
- [UML]UML系列——类图class的泛化关系
- [UML]UML系列——类图class的依赖关系
- 类图和对象图教程-类(Class)、接口(Interface)、协作(collaboration)、依赖关系(Dependency)、泛化关系(Generalization)、关联关系(Association)以及实现关系(Realization)
- [UML]UML系列——类图Class
- UML:UMLl类图符号 对象与类之间相互关系的类型包括:依赖、关联、聚合、组合、泛华、实现等。
- UML基本概念--类图关系 依赖、关联、泛化、实现
- UML 类图关系(继承,实现,依赖,关联,聚合,组合)
- [UML]UML系列——类图class的关联关系(聚合、组合)
- [UML]UML系列——类图Class
- EA&UML日拱一卒--类图::实现(realization)
- UML 类图. 对象图. 接口图. 用例图 .包,参与者. 依赖关系. 泛化/继承关系. 关联关系 .聚合/聚集关系. 实现关系 组合关系。
- UML中类图的四种关系及其代码实现
- UML 类图. 对象图. 接口图. 用例图 .包,参与者. 依赖关系. 泛化/继承关系. 关联关系 .聚合/聚集关系. 实现关系 组合关系。
- UML 类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)
- UML系列,使用UML实现GOF Design patterns,常用模式类图解读
- UML中类图的四种关系及其代码实现