相关文章

      [UML]UML系列——用例图Use Case

[UML]UML系列——用例图中的各种关系(include、extend)

一、类图的概念及组成

1、类图的概念

类图是描述类、接口已经他们之间关系的图,它显示了系统中各个类的静态结构,是一种静态模型。

2、类图的组成

2种类元素(类和接口)

4种关系(依赖关系、实现关系、泛化关系和关联关系)

二、类的概念与表示符号

类和对象的关系:比如”人类“就是一个类,那么具体的某个人”张三“就是”人类“这个类的对象,而”名字、年龄“等信息就是对象的属性,人的动作比如”吃饭、穿衣、睡觉“等就是对象的操作。总之类就是有相同特征的事物集合,而对象就是类的一个具体实例。同时类有多态和继承,例如”人类“可以分为”男人、女人“。(摘自互联网)

1、类的概念

类是具有相同属性和行为的对象集合。

例如定义一个Student类:

 class student //定义学生类
{
public string name;
private int englishScore;
private int mathScore;
private int computerScore;
public int sumScore; public student(string x, int y, int z, int k)
{
name = x;
englishScore = y;
mathScore = z;
computerScore =k;
} public void sum()
{
sumScore = englishScore + mathScore + computerScore;
}
}

对应的类图:

2、类的符号

注意:名称分栏是必须出现的分栏,属性分栏和操作分栏可以出现或不出现。当隐藏某个分栏时,并不一定表示某个分栏不存在。

在C#中用关键字class来定义类,其基本格式为:

[可见性]class 类名

{

字段的定义

属性的定义

操作的定义

}

类的可见性:public、internal(默认)(例如上面的student类)

三、类的属性

属性:描述类的特征,有一些变量组成。

c#中定义属性的格式:可见性  数据类型 属性名;

可见性:public(公有)、private(私有)、Protected(保护)

数据类型:int、char、string、float、bool......

可见性在建模工具中的表示:

四、类的操作

操作:描述类的行为的函数,有些地方也成为方法。

类中的函数:操作(普通函数)、构造函数......

 1、类的操作(普通函数)

c#中定义操作的格式:

可见性 返回值类型 函数名([形参列表]){.....},可见性及数据类型这里不再列出。

     2、构造函数

作用:为类的对象分配内存空间并进行初始化。

程序一执行到创建类的对象的语句时,就自动调用构造函数。

如果一个类没有显示定义构造函数,c#就自动调用默认的构造函数创建对象,但不对其进行初始化。

c#中定义构造函数的格式:

 class 类名

       {

           public 类名([参数]){......}

        }

注意:构造函数的名称与类名完全相同。无需指定返回值类型。

类的Rose建模

1、创建类图

      2、添加类

3、修改类的名称

4、添加并设置属性

  5、添加并设置操作

操作的添加及设置方法与属性的大同小异。这里就不再贴图演示了。

总结

本UML系列的学习,采用的Rose建模工具画图。你如果需要可以下载一个Rational Rose2007

类图的画法就介绍到这里,中间穿插讲了一些c#基础,当时学习c#就是这么学的,没有课本,老师描述,自己摸索,就这样......

后面将介绍类图的各种关系。

如果您觉得对你多少有点帮助,请点击推荐,如果文中有不妥的地方,请留言,LZ再研究,必改之.......

[UML]UML系列——类图Class的更多相关文章

  1. [UML]UML系列——类图class的关联关系(聚合、组合)

    关联的概念 关联用来表示两个或多个类的对象之间的结构关系,它在代码中表现为一个类以属性的形式包含对另一个类的一个或多个对象的应用. 程序演示:关联关系(code/assocation) 假设:一个公司 ...

  2. [UML]UML系列——类图class的依赖关系

    相关文章          [UML]UML系列——用例图Use Case       [UML]UML系列——用例图中的各种关系(include.extend)       [UML]UML系列—— ...

  3. [UML]UML系列——类图class的泛化关系

    系列文章       [UML]UML系列——用例图Use Case       [UML]UML系列——用例图中的各种关系(include.extend)       [UML]UML系列——类图C ...

  4. [UML]UML系列——类图class的实现关系Realization

    系列文章 [UML]UML系列——用例图Use Case       [UML]UML系列——用例图中的各种关系(include.extend)       [UML]UML系列——类图Class   ...

  5. UML简单介绍—类图详解

    类图详解 阅读本文前请先阅读:UML简单介绍—类图这么看就懂了 1.泛化关系 一个动物类: /** * 动物类 */ public class Animal { public String name; ...

  6. 3.UML中的类图及类图之间的关系

    统一建模语言简介 统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际标 ...

  7. GOF 的23种JAVA常用设计模式总结 02 UML中的类图与类图之间的关系

    统一建模语言UML 统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际 ...

  8. UML中的类图及类图之间的关系

    统一建模语言简介 统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际标 ...

  9. UML精粹3 - 类图,序列图,CRC

    类图Class diagram 类图描述系统中的对象类型,以及它们之间的各种静态关系.类图也展示类的性质和操作,以及应用于对象连接方式的约束.UML中的特性feature,涵盖了性质property和 ...

随机推荐

  1. 关于 Java 中 finally 语句块的深度辨析

    应该有很多人对java的finally 理解的不是很透彻吧,这里有篇文章讲的非常深入.猛击下面链接.面试时经常问到这问题 http://www.ibm.com/developerworks/cn/ja ...

  2. java设计模式之外观模式

    外观模式概念 外观模式又称为门面模式,为子系统中的一组接口提供一个一致的界面,此模式定义了一个搞层次接口,使得这一个子系统更加容易使用.这一模式完美的体现了依赖倒转原则和迪米特法则的思想,所以是非常常 ...

  3. 【转】40个良好用户界面Tips

    一个良好的用户界面应具有高转换率,并且易于使用.但要用户体验良好并不容易做到,下面我们整理了40个良好用户界面Tips,希望能对你有帮助! 1 尽量使用单列而不是多列布局 单列布局能够让对全局有更好的 ...

  4. 苹果iOS强制HTTPS迫在眉睫,距离2017年只剩1天,准备好了么?

    其实不久前苹果就发了通告,要求ios上的应用全部以HTTPS来进行接口调用以及数据访问,这样做是为了数据安全,一方面为了自己,另一方面也是对应用的要求更加严格,这么做很好,也加强了市场app的规范,虽 ...

  5. BZOJ 1014: [JSOI2008]火星人prefix [splay 二分+hash] 【未完】

    1014: [JSOI2008]火星人prefix Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 6243  Solved: 2007[Submit] ...

  6. idea快捷键(自用)

    idea快捷键(自用) 1.比如输入eclipse下面的main,sysout等,在idea里面同样可以实现,如下: sysout(sout 按tab),main(psvm按tab),具体可按照ctr ...

  7. The week in .NET - 1/12/2015

    On.NET Last week, we had Mads Torgersen on the show to talk about language design in general, and C# ...

  8. swift上传头像

    很久没有写博客了,今天特地写了这个,也是一边仿照别人写的demo,注释部分都是需要的.需要的同学可以参考一下. @IBAction func headImageBtnPage(){  //上传头像 / ...

  9. EF批量添加数据性能慢的问题的解决方案

    //EF批量添加数据性能慢的问题的解决方案 public ActionResult BatchAdd() { using (var db = new ToneRoad.CEA.DbContext.Db ...

  10. nginx、php-fpm二三问

    php-cgi为什么没了? php-fpm子进程是干啥的?php-cgi是原来php自带的fastcgi进程管理器,有一些缺点,比如不能平滑重启,进程管理差.php-fpm可以看做升级版的php-fp ...