UML对象关系学习总结

本文和大家重点讨论一下UML对象关系方面的知识,主要包括关联关系,聚合关系,组合关系等,相信通过本文的学习你对UML对象关系一定会有深刻的认识。

UML对象关系学习总结

【UML对象关系之关联关系】

关联关系是一种最简单、最抽象的对象间关系描述。它只是描述了对象A于对象B之间存在一种业务上、概念上的逻辑关系,但是关联关系的双方不包含对方的属性。

【UML对象关系之聚合关系】

聚合关系是一种特殊的关联关系,除了具备关联关系的特性之外,还包括了以下的一些规则:

A.对象A和对象B之间存在一种包含的关系

B.对象A和对象B之间必有一方为“容器”,另外一方为“元素”。即“whole-part”关系

C.容器方和元素方对象的生命周期是彼此独立的,并不依赖于对方而存在,也就是说是一

种“松散”的关联。容器和元素可以被独立创建、销毁,容器不存在了不影响元素的存在,元素不存在了容器可以依然存在

D.容器方可以没有元素,也可以有一个至多个元素

E.元素方可以“被包含于”一个容器,也可以“被包含于”多个容器

F.向容器添加元素,或者从容器中移除元素并不影响容器

【UML对象关系之组合关系】

组合关系是一种特殊的聚合关系,除了具备关联关系、聚合关系的特性之外,还包括了以下的一些规则:

A.容器方和元素方对象的生命周期是互相依赖的。即元素依赖于容器而存在,一旦容器不存在了那么元素也就不可能存在。容器必须优先于元素而被创建,元素必须优先于容器而被销毁。

B.元素方只能“被包含于”一个容器

【UML对象关系之举例分析】

A.关联关系的例子分析:

学生-------------成绩

学生与成绩之间就是一个关联关系,你不能把学生的属性写到成绩对象中去,同理不能把成绩的属性写到学生对象中去,但两者之间确实存在一种业务上的联系,而且是固定的

B.聚合关系的例子分析:

班级-------------学生/汽车-------------配件

班级与学生,汽车与配件之间的关系就是一个聚合关系。首先一个班级可以包含零至多个学生,一部汽车可以包含零(未组装之前)至多个配件。

其次学生可以先被创建,然后创建班级,再向班级中添加,移除学生。配件可以先被创建并保存到仓库,然后再组装成汽车。在班级,汽车对象没有形成之前,学生与配件的对

象可以已经存在(即容器和元素对象的生命周期是独立的)

C.组合关系的例子分析:

基金账户-------------单笔交易

基金账户与单笔交易就是一个组合关系。首先单笔交易必须依赖于基金账户而存在,也就是说我们必须先创建基金账户这个“容器方”,之后才能够创建单笔交易这个“元素方”,然后再把单笔交易挂到(添加)基金账户下。没有基金账户预先存在,我们不能执行单笔交易。我们不能先创建单笔交易,再创建基金账户,然后再挂靠交易。

这一点就不同于上面的班级与学生,汽车与配件的存在关系了。

其次单笔交易只能挂靠在某一个特定的基金账户下,也就是说元素方只能“被包含于一个”容器

【UML对象关系之延伸思考】

在对象和对象之间的关系中,有时会提到“依赖”关系,即对象A依赖于对象B而完成某项操作,那么这种关系是不是也属于“关联关系”呢?

个人认为这不属于一种“关联关系”。因为上面我们提到的三种关系中,每一种关系除了是固定的关系之外,还有一个重要的特点就是这些关系是需要“被持久化,被保存”起来的。

而依赖关系只是对象和对象之间的引用(或称调用)关系,这种关系只发生在运行期间而不是业务上,概念上的联系,并不需要被保存。所以“依赖关系”并不属于UML中的对象关系。

 

第二篇:ARM-linux学习总结

AEM-linux学习总结

系统要求:windows下虚拟机安装Red Linux

挂接ARM开发板

知识点1.

1. Windows XP 与Linux 共享文件夹问题

在Linux系统中选择VM-Settings 在弹出的Virtual Machine Setting 对话框中选择Option属性页,在Setting中选择Shared Folers来设置共享文件夹。

2.挂接arm板

在宿主机PC上启动NFS服务,并设置好共享的目录,之后在开发板上运行:

mount –t nfs 192.168.0.10:/arm /host

(IP地址要根据实际情况修改)

挂接宿主机的根目录,成功后在开发板上进入/host目录便相应进入宿主机的ARM目录。

mount 192.168.0.10:/arm /mnt

在Linux mnt/目录下看是否可以列出ARM目录下的所有文件和目录。

知识点2.

1. 交叉编译问题

第一步:先编写.c文件(包含完整的头文件)。

第二部:编译(gcc –o filename filename.c)

第三部:编写 Makefile文件和Rules.mak文件

第四步:编译(make命令)

出来的目标文件,下载的目标ARM板。启动ARM,运行程序。

1.建立目录:mkdir 目录名

2.删除空目录:rmdir 目录名

3.无条件删除子目录: rm -rf 目录名

删除文件:rm 文件名

4.改变当前目录:cd 目录名 (进入用户home目录:cd ~;进入上一级目录:cd 。)

5.查看自己所在目录:pwd

6.查看当前目录大小:du

7.显示目录文件列表:ls -l (-a:增加显示隐含目录)

其中:蓝:目录;绿:可执行文件;红:压缩文件;浅蓝:链接文件;灰:其他文件;红底白字:错误的链接文件

8.浏览文件:more 文件名.txt;less 文件名.txt

9.复制文件: cp 源文件 目标文件 (-r:包含目录)

10.查找文件:(1)find (2)locate 命令名

11.链接:(1)建立hard链接:ln 来源文件 链接文件(-d:创建目录链接);(2)建立符号链接:ln -s 来源文件 链接文件

12. 查看文件内容,并将显示内容加注行号 cat –n 文件名

13. touch 文件名 文件名若为新的文件名,表示要建立这个新文件。若为旧文件名,表示要更改文件的编辑日期。

14.mv 源文件名 目标文件名 重新命名 mv 源文件 目标目录 移动文件

15 locate 文件名 列出文件所属的路径

16 find –name 文件名 由工作目录起,列出文件所属的路径

二.驱动挂载类

1.检查硬盘使用情况:df -T -h

2.检查磁盘分区:fdisk -l

3.挂载软硬光区:mount -t /dev/fdx|hdax /mnt/目录名

其中::modos--FAT16;vfat--FAT32;ntfs--NTFS;光驱--iso9660

支持中文名:mount -o iocharset=x /dev/hdax /mnt/目录名(其中:x=cp936或

挂载光驱:mount -t auto /dev/cdrom /mnt/cdrom

挂载ISO文件:mount -t iso9660 -o loop xxx.iso /path

4.解除挂载:umount /mnt/目录名

解除所有挂载:umount -a

5.建立文件系统:mkfs -t /dev/hdxx。其中:ftype:ext2、ext3、swap等

三.进程控制类

1.列出当前进程ID:ps -auxw

2.终止进程:(1)终止单一进程:kill 进程ID号

(2)终止该程序所有进程:Killall 程序名

(3)终止X-Window程序:xkill

3.查看资源占用情况:(1)top (2)free (3)dmesg

4.查看环境变量值:env

5.重启:(1)reboot (2)Ctrl Alt Del (3)init 6

6.关机:(1)shutdown -h now (2)halt (3)init 0

7.切换桌面:switchdesk gnome|KDE|...

#cp linux-2.4.18.tar.gz /usr/src

然后解压该文件,命令为:

#tar -zxvf linux-2.4.18.tar.gz

如果你所下载的是.bz2文件,例如linux-2.4.0test8.tar.bz2,请使用下面的命令 #bzip2 -d linux-2.4.18.tar.bz2

#tar -xvf linux-2.4.18.tar

相关推荐