一种对象属性的描述方法技术

技术编号:2833577 阅读:219 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种对象属性的描述方法,属于计算机应用领域。本发明专利技术通过数据类型、定量数值、定性描述来描述对象属性,其中,所述的定量数值为所描述对象的实际数值;所述的数据类型用于表示定量数值的类型;所述的定性描述给出了定量数值的状态。本发明专利技术给出了一种对象属性的通用数据结构定义和实现方法,可更好的描述现实世界中任意对象的属性,并简化对象间的操作接口。

【技术实现步骤摘要】

本专利技术属于计算机应用领域,具体涉及。技术背景在计算机软件设计中,为了解决应用领域的实际问题,通常需要利用 计算机语言中定义的整型、浮点型、字符等基本数据类型、以及结构体、 数组等自定义数据类型来描述现实世界中的对象属性。然而由于实际业务 中的对象属性往往千差万别,同 一程序员在定义描述不同对象时通常要采 用不同的数据表示方法,而不同程序员在描述同 一对象时的数据表示方法 也不尽相同。这种在对象属性值的数据表示方法上的不统一,增加了定义 数据操作,以及模块接口的复杂性。目前,在面向对象的程序设计中,通 常是采用重载或者模板的方法来解决。但重载的方法只是简化了函数调用 时的复杂性,并没有解决函数定义(即重载函数)的复杂性。同时,在实际业务中, 一个对象的属性往往具备多种表达方法。比如物体颜色,在显示器上,我们通常用RGB三个分量来描述颜色,而在印刷 领域我们通常采用CMYK四种分量进行描述。在传统方法中,要解决该问题 只能采取同时定义两个属性值的方法;而这显然和实际世界是不一样的。 因为在我们眼里,物体的颜色是一个确定的属性,采用CMYK和RGB只是表 达方式上的不一样。本专利技术支持对象同时采用多种数据类型进行表达, 很好的解决了该问题。另一方面,传统的数据类型只能用于对对象属性进行量化描述,而缺 少对数据的定性描述。比如对于一个值域区间在(0,1)的变量,如果给这个 变量赋值为2,即超出它的值域区间,这个值实际是个错误的值,在程序 的有效性检验中会发现这个问题。但程序无法仅仅从这个变量的数值来判 断,因此在每次使用该变量进行运算前,程序都需要调用有效性校验这个 模块,这带来了大量重复的计算,其原因即在于,单一的数据值无法记录 该^t值在实际应用中的状态。
技术实现思路
针对现有技术中存在的缺陷,本专利技术的目的是提供一种对象属性的描 述方法,该方法使得在程序设计时,可以采用统一的方法进行对象属性的 数据表达,并可采用统一的接口进行对象属性的存取操作,降低了程序设 计时的复杂度,提高了程序的可扩展性,采用该方法定义的数据变量可以 更好的满足实际的应用需要。为达到以上目的,本专利技术采用的技术方案是,通过数据类型、定量数值、定性描述来描 述对象属性,其中,所述的定量数值为所描述对象的实际数值;所述的数 据类型用于表示定量数值的类型;所述的定性描述给出了定量数值的状态。进一步,所述的数据类型包括整型、无符号型、浮点型、字符型、布 尔型、指针型;所述的数据类型是排他性的,即一个对象属性只能定义一 种数据类型;所述的数据类型采用的编码方式是二进制的编码方式或十进 制的编码方式。进一步,通过一个32位的整型值来表示所述的数据类型。 进一步,所述的数据类型能够根据实际使用的编程语言进行扩展。进一步,所述的定性描述能够根据实际的业务需要来进行状态的设置。 进一步,所述的定量数值的状态包括空属性、无效属性、越界属性、 未决属性和有效属性;其中,空属性是对象的一种特殊属性状态,在该状 态下,定量数值被忽略,用于表示人机交互中未有输入的数据;未决属性 用于多个对象实例的属性发生冲突时的描述;无效属性是泛指 一切属性数 值不合法的属性;越界属性是无效属性的一种,它具体指属性数值超出有 效区间的属性;有效属性是和无效属性对立的属性,即属性数值合法的属 性。进一步,所述的定性描述是通过编码的方式来进行定义的,从而实现 对定量数值的状态的描述。进一步,所述的定性描述是通过二进制编码的方式来进行定义的,具体方法如下0xQ0表示空属性,0x20表示无效属性,0x40表示未决属性, OxlO表示有效属性,0x21表示越界属性。进一步,对象属性的数据类型、定量数值、定性描述是通过定义一个 数据结构来实现的,所述的数据结构包含了数据类型、定量数值、定性描 述三部分数据。进一步,对象属性的数据类型、定量数值、定性描述是通过定义三个 变量来实现的。本专利技术的效果在于本专利技术给出了一种对象属性值的通用数据结构定 义和实现方法,可更好的描述现实世界中任意对象的属性,并简化对象间 的操作接口。另外,本专利技术创造性的将对象的定性描述纳入对象属性的数 据表示中,并创造性的提出了对对象属性的多种数据类型表达,使对象的 属性描述更接近实际世界。附图说明图l是本专利技术所述方法具体应用时的流程图; 图2是数据层和显示层的映射关系示意图; 图3是同一属性的多种数据类型表示示意图; 图4是未决属性应用示意图。具体实施方式下面结合具体实施方式和附图对本专利技术作进一步的描述。 一种统一的对象属性描述方法,将对象属性的数据分为三部分数据 类型、定量数值、定性描述。其中,定量数值为所描述对象的实际数值。所述的数据类型用于表示定量数值的类型,包括计算机编程语言中的整型、无符号型、浮点型、字符型、布尔型、指针型;也可根据实际使用 的编程语言进行扩展,比如增加,结构类型等等。在本实施例中,优选考 虑这六种基本类型。其中指针型数据类型体现了该方法的可扩展性,对于 结构型或者自定义数据类型,程序员均可通过指针的方式进行扩展,即此 处只定义一个指向存储数据的地址指针,实际的数据存储由程序员在外部 自行定义。所述的定性数值给出了定量数值的状态描述,并且还能够根据实际的 业务需要来进行状态的设置。在本实施例中,所述的对定量数值的状态描述包括空属性、无效属性、 越界属性、未决属性和有效属性。其中,空属性是对象的一种特殊属性状 态,在该状态下,定量数值被忽略,用于表示人机交互中未有输入的数据。 未决属性用于多个对象实例的属性发生冲突时的描述;比如同一型号的两 辆汽车,如果其颜色属性是一致的,我们可以用一个确定的颜色值对两辆 汽车同时进行描述,但对于一辆红色、 一辆黄色汽车,我们只能用未决这 样一个不确定的属性对其颜色进行描述。无效属性是泛指一切属性数值不 合法的属性,以分数为例,分母为Q是不允许的,所以如果出现属性的数 值分母为0,则该属性属于无效属性。越界属性是无效属性的一种,它具 体指属性数值超出有效区间的属性,比如应用规定数值的区间为, 则2为越界属性。有效属性是和无效属性对立的属性,即属性数值合法的 属性。如图l所示,本专利技术所述的方法在具体应用过程中,包括以下几个步骤步骤一,采用一种编码方式来分别定义六种数据类型。在这一步骤中, 由于这六种数据类型是排他性的,即一个对象属性只能定义一种数据类型。 所以,采用的编码方式只要能对这六种类型进行区分即可,可采用二进制 的编码方式,比如定义一个6位的二进制,每位代表一种类型,哪一位为 1,表示该数值为那种对应的数据类型。也可以按顺序采用十进制依次编码, 比如0表示整型、l表示无符号型、2表示浮点型、3表示字符型、4表示布尔型、5表示指针型。本实施例优选前一种编码方式。如下表所示,在本实施例中我们通过一个32位的整型值来表示数据类 型。其中,第O位用来表示该属性是否用整型数据表达,第l位表示该属 性是否用无符号型数据表达,第2位用来表示该属性是否用浮点型数据表 达,第3位用来表示该属性是否用字符型数据表达,第4位用来表示该属 性是否用布尔型数据表达,第5位用来表示该属性是否用指针型数据表达, 其余6……31位预留,可根据应用扩展。指针型布尔型本文档来自技高网
...

【技术保护点】
一种对象属性的描述方法,通过数据类型、定量数值、定性描述来描述对象属性,其中,所述的定量数值为所描述对象的实际数值;所述的数据类型用于表示定量数值的类型;所述的定性描述给出了定量数值的状态。

【技术特征摘要】
1.一种对象属性的描述方法,通过数据类型、定量数值、定性描述来描述对象属性,其中,所述的定量数值为所描述对象的实际数值;所述的数据类型用于表示定量数值的类型;所述的定性描述给出了定量数值的状态。2. 如权利要求1所述的一种对象属性的描述方法,其特征是所述的数 据类型包括整型、无符号型、浮点型、字符型、布尔型、指针型;所述的数 据类型是排他性的,即一个对象属性只能定义一种数据类型。3. 如权利要求2所述的一种对象属性的描述方法,其特征是所述的数 据类型还能够根据实际使用的编程语言进行扩展。4. 如权利要求2或3所述的一种对象属性的描述方法,其特征是所述 的数据类型采用的编码方式是二进制的编码方式或十进制的编码方式。5. 如权利要求1、 2或3所述的一种对象属性的描述方法,其特征是 所述的定性描述能够根据实际的业务需要来进行状态的设置。6. 如权利要求1、 2或3所述的一种对象属性的描述方法,其特征是 所述的定量数值的状态包括空属性、无效属性、越界属性、未决属性和有 效属性;其中,空属性是对象的一种特殊属性状态,在该状态下,定量数值 被忽...

【专利技术属性】
技术研发人员:熊雯
申请(专利权)人:北大方正集团有限公司北京北大方正电子有限公司
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1