Uml是我们经常使用的统一建模语言或称标准建模语言。它的图是如何和代码对应的呢?下面我们就来就这个问题讨论一下:

首先是类:uml中的类图是这样的

在这个图中,我们可以看出,这个类图总共分了三行,第一行是类的名称,表示这个类是鸟的类,第二行写的是类中包含的属性,本图中,说了鸟这个类有两个属性:一个是羽毛的属性,另一个是角质喙(hui)。第三行是方法,本图中,鸟有一个方法就是下蛋的方法。

那么,这张图转化成代码该怎么写呢?

         //首先我们需要声明一个类,并且指明这个类的访问权限为public。
Public class bird{
//在类中我们需要写明这些类的属性和方法,并且指明这些属性和方法的访问的权限。现在先写属性
Public feather feather;//这里声明了一个公有类型的(private)羽毛类型的属性(第一个feather),属性的名称为羽毛(第二个feather)。
Public CutinBeak CutinBeak; //写完属性以后就是写鸟类的方法
//鸟的下蛋的方法
Public void LayEgg(){
//这里由dos窗体打印下蛋代表实际的下蛋动 作
System.out.print(“下一个蛋”);
} }

有的类是从父类继承过来的,如果对继承不了解的话可以看这篇博客,在这里就不再说了,那么父类和子类在代码中又有什么区别呢?

父类的图是这样的:

父类的代码和子类代码类似:

         Public abstract class animal{
//动物的属性
Public int age;
//动物的方法
Public int breed(){}}

当子类继承父类时,需要在子类后加一个特别的字符extends,然后写上父类的名字。比如鸟类继承动物类,需要这样写:

      <span style="font-size:18px;">  Public class bird extends Animal{
Public feather feather;
Public CutinBeak CutinBeak;
Public void LayEgg(){
System.out.print(“下一个蛋”);
}
}</span>

uml的图与代码的转换——类图的更多相关文章

  1. 如何将C++代码逆向生成类图 (VS2013)

    1. 将代码添加到VS2013工程中: 2. 切换到"类视图": 3. 选中项目 右键"视图"->"查看类图". 如果项目文件太多的话 ...

  2. UML九种图 之 用例图和类图

    前言     近期写UML文档,看视频的时候感觉掌握的还能够,当真正写文档的时候才发现不是一件easy的事.写文档自己又翻开自己的笔记看了一遍又一遍. 以下就给大家介绍一下我画的几张图: 用例图   ...

  3. 2.设计模式常用的UML图分析(用例图、类图与时序图)

    1-用例图 概述 展现了一组用例.参与者以及他们之间的关系. 用例图从用户角度描述系统的静态使用情况,用于建立需求模型. 用例特征 保证用例能够正确捕捉功能性需求,判断用例是否准确的依据. 用例是动宾 ...

  4. StarUML 系列,静态图与动态图,用例图,类图【ps:熟悉一下starUML】

    大部分:   静态图部分,即静态不动的图 1.用例图, Use case diagram 1.展示系统核心功能及与其交互的用户ACTOR 表示:椭圆

  5. StarUML 系列,静态图与动态图,用例图,类图

    大部分:   静态图部分,即静态不动的图 1.用例图, Use case diagram 1.展示系统核心功能及与其交互的用户ACTOR 表示:椭圆

  6. 转:深入浅出UML类图(具体到代码层次)

    深入浅出UML类图 作者:刘伟 ,发布于:2012-11-23,来源:CSDN   在UML 2.0的13种图形中,类图是使用频率最高的UML图之一.Martin Fowler在其著作<UML ...

  7. UML类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)

    UML类图关系(泛化 .继承.实现.依赖.关联.聚合.组合) 继承.实现.依赖.关联.聚合.组合的联系与区别 分别介绍这几种关系: 继承 指的是一个类(称为子类.子接口)继承另外的一个类(称为父类.父 ...

  8. 全面认识UML类图元素

    本节和大家一起学习一下UML类图元素,类图能出色地表示继承与合成关系.为了将UML类图作为一种高效的沟通工具使用,开发者必须理解如何将类图上出现的元素转换到Java中.请看本节详细介绍. 全面认识UM ...

  9. UML[1] UML类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)(转)

    转自:http://blog.csdn.net/zhaoxu0312/article/details/7212152 继承.实现.依赖.关联.聚合.组合的联系与区别 分别介绍这几种关系: 继承 指的是 ...

随机推荐

  1. mysql迁移-----拷贝mysql目录/load data/mysqldump/into outfile

    摘要:本文简单介绍了mysql的三种备份,并解答了有一些实际备份中会遇到的问题.备份恢复有三种(除了用从库做备份之外), 直接拷贝文件,load data 和 mysqldump命令.少量数据使用my ...

  2. 《算法导论》Problem 2-4 Inversions

    在Merge Sort的基础上改改就好了. public class Inversions { public static int inversions(int [] A,int p, int r) ...

  3. linux命令学习7-jstat命令

    最近维护的项目使用的是java开发的,所以对于jvm虚拟机相关的操作还是必须要了解的,就先从最基本的jstat来学习起来. 首先需要会的就是full gc的查看; 下面就从网上收集了一些工具介绍, 慢 ...

  4. 设计模式笔记之一:MVP架构模式入门(转)

    写在前面:昨天晚上,公司请来专家讲解了下MVP,并要求今后各自负责的模块都要慢慢的转到MVP模式上来.以前由于能力有限,没有认真关注过设计模式.框架什么的,昨晚突然兴趣大发,故这两天空闲时间一直在学习 ...

  5. The account '...' is no team with ID '...'

    iOS升到9.2之后,有一个大坑,原先真机调试的开发者账号(未付费),连不了Xcode了,会弹出一个提示框提示你, The account '...' is no team with ID '...' ...

  6. double和real型有什么区别 [

    DOUBLE是双精度浮点数REAL  是实数类型,他包括 DOUBLE,SINGLE等类型

  7. 机器人局部避障的动态窗口法(dynamic window approach) (转)

    源:机器人局部避障的动态窗口法(dynamic window approach) 首先在V_m∩V_d的范围内采样速度: allowable_v = generateWindow(robotV, ro ...

  8. TabLayout学习笔记

    配合ViewPager使用,基本布局如下: <?xml version="1.0" encoding="utf-8"?> <LinearLay ...

  9. Jquery插件之ajaxForm ajaxSubmit的理解用法

      如今ajax满天飞,作为重点的form自然也受到照顾. 其实,我们在平常使用Jquery异步提交表单,一般是在submit()中,使用$.ajax进行.比如:   $(function(){ $( ...

  10. 使用django-compressor压缩静态文件

    Reference:http://blog.csdn.net/permike/article/details/52355095 在网站开发阶段,对于静态资源文件比如JS,CSS等文件都是未经过压缩合并 ...