- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ISSNIO00—9825 Journa]ofSoftware 软 件 学 报 2000,11(5):694-- 700
6l ]0o
. q
一 种基于类层次 图的分析面 向对 象程序 的框架
李信粱佳张翔樊晓聪郝国粱弋flI
(南京大学计算机 软件新技术 国家重 点实验 室 南 京 210093)
(南京大学 }f算机科 学与技术 系 南 京 210093)
E mai[:zhengg[@nju.edu.cn
摘要 从 类层斑 囤 CHG (classhierarchygraph)出发 ,提 出一十基 于 CHG 的分析 面向对 象程序 的框架 OOAF
(object—orientedanalyzingframework),讨论 丁OOAF 的功 能 、算法和设计 思想 ,培 出了子对 象识 剐 以及 可见
方法、主导方法 的确定算法 ,建立 了可见 方法妻层 斑目;并且通过计算方法 的摧承集 、盘写集 以厦对方法盘写
边界的确 定.生成程序 的虚 函敷调用 圈,从而为理解面向对象程序 中的虚 函敷调用问题提供 了一种 可行的解
击 方案
关t词 毫墨查里,鱼堕璺,分析框架,子对象识 ,方法确定,虐墨墼翊』 n
中圈法分类号TP豇 { 。oA ’
。、I、 \ 。
与分 析结 构化程 序相 比,分析 面 向对象 的程序 要显得 困难 得多.究其 原 因,我们认 为主要 有 下 几点 :
(1/面 向对象程序设计鼓励代码分解和细化程序设计 ,结果是不仅过程体越来越小 ,而且过程 词用越来越频繁 :
(2)由于使用 了动态 定连机制 ,教调用 的过 程 依赖接 收方 的动态类 型 ,所 直 到运 行 时才 能确 定该 调用 哪一 个
过程 ,从而导致 分析调用 问题特别 困难 ;(3)面 向对象程序设计允许继承机制 ,一个对象可能属于 由许多类构成
的一 串类 ,这就使得对象的行 为难 以控制 ,特别是多继承机制 的使用使得类层次结构 以及娄之 间的黄系更加复
杂 ;(4)由于予类型、重载 (多态性 )机制 的使用 ,导致在某个程 序点 ,我们很难确 定一个指针指 向的对象在程序
运 行 过程 中的类 型 一~.本文提 出一个基 于类层 次 图 CHG (crasshierarchygraph/的分析 面 向对 象 程序 的框架
… OOAF(object—orientedana[yzingframework).OOAF 目前具 有 下几个功能:(1)利用路径等价 (类)技术
识别子对 象 ;(2)利用子对 象 (路径)进 行可见方法和 主导方法 的确 定F(3)结台 确定 的可见方法和类层 次 图建立
可 见方法类层 次 图 vM—CHG(visibtemethodcrasshierarchygraph);(4)在 VM—CHG 的基础 上计算 继承集 和改
写集 ,确 定菜个方法 的改写边界 :(j)构造虚 函数 词用 图 VFcG(vhtua【functioncallgraph),以解 决虚 函数 调用
的模 型化 问题.车文第 1节介绍 文 中将要用到的两个基本概念.第 2节详 细介绍 ()OAF功能的宴现原理和 实现
算法.第 3节概述 OOAF框架 的结构思想.第 4节 给 出与相关工作 的比较 ,并给 出文 中工作 的总结和夸后 的研
究 内容 .
1 基本概念 和术语
我们可 以用 一个直接 无环 图来模 型化 一个 C++ /Java程 序 的娄 层 次 ,这 个直接 无环 圉就是 类层 次 图
(CHG),娄层 改 图的结 点表示类 ,边表示 继承关系 .类层 次 图的严格 定义如 下 :
定义 1(类层次圉).令 Ⅳ表示 c+十程序 中类 的集 台 ,Ev表示类 与 它的直接虚基类 构成 的有序对 ( ,
· 本文研究得到江苏省应用基础基金 (No.BJ970361资助.作者李必t1111969年生 博士生 t主要研究领域为面 向对 象技术
厦其支持环境 程序理解 集佳 ,女 .1974年生 ,硬士生 ,主要研究额域为款件工程 .面 向对 象技木.张 爵翔 1975年生 ,硕士生t主
要研 究顿域为软件工程 ,面向对 象技术 .羹 晓聪 ,1972年生 ,博士 ,主要研 究领域为款件
文档评论(0)