仅仅描述原文,进行一定的翻译,细节再慢慢体会:
1. 元模型中Property的定义[1]:
A property is a typed element that represents an attribute of a class.
一个特性(property)是一个有类型的元素(typed element),它代表了一个类中的一个属性(Attribute)
2. 元模型中:Core::Constructs::Class Diagram[2]
A
property is a structural feature of a classifier that characterizes
instances of the classifier. Constructs::Property merges the definition
of Basic::Property with Constructs::StructuralFeature.
When
a property is owned by a class it represents an attribute. In this case
it relates an instance of the class to a value or set of values of the
type of the attribute.
When
a property is owned by an association it represents a non-navigable end
of the association. In this case the type of the property is the type
of the end of the association.
Property
represents a declared state of one or more instances in terms of a
named relationship to a value or values. When a property is an attribute
of a classifier, the value or values are related to the instance of the
classifier by being held in slots of the instance. When a property is
an association end, the value or values are related to the instance or
instances at the other end(s) of the association (see semantics of
Association).
Property是用来刻画这个类元(classifier)实例的结构化特征。Constructs包中的Property(Constructs::Property)结合了Basic::Property和Constructs::StructuralFeature的定义。
当property属于class时,它代表一个attribute。此时,它将一个class的实例和attribute类型的一个值或一组值关联起来。
当property属于连接(association)时,它表示连接的一个非导向端。此时,property的类型就是连接端的类型。
Property表示通过命名关系将一个或多个实例关联到一个值或多个值的声明状态。当Property为类元的属性(attribute)时,这个值或这些值通过正在槽(slot)中保持的实例联系到类元的实例。当property为连接端时,这个值或这些值关系到连接(association)的另一端的一个或多个实例。
3. Attribute的定义依然存在[3]:
A
structural feature of a classifier that characterizes instances of the
classifier. An attribute relates an instance of a classifier to a value
or values through a named relationship.
Attribute是刻画类元实例的结构化特征,一个Attribute通过一个命名关系将类元的实例联系到一个或多个值。
-------------------------------------------以下为其他参考--------------------------------------------
4. Note that an attribute typically corresponds to public properties in a language that supports properties but to private fields in a language that does not. In a language without properties, you may see the fields exposed through accessor (getting and setting) methods. A read-only attribute will have no setting method (with fields) or set action (for properties). Note that if you don't give a name for a property, it's common to use the name of the target class.[5]
注意:Attribute一般相当于支持properties的语言中的公有properties或不支持properties的语言中的私有字段(Field)。没有properties的编程语言中,需要通过存取器来访问字段,而只读attribute时没有存(set)方法和动作的。如果没有为property命名,它通常就是用目标类的名字。
[1]. UML 2.0 Infrastructure Final Adopted Specifcation03-09-15文档111页
[2]. UML 2.0 Infrastructure Final Adopted Specifcation03-09-15文档123页
[3]. UML 2.0 Infrastructure Final Adopted Specifcation03-09-15文档17页
[4]. UML参考手册
[5] . UML distilled
分享到:
相关推荐
**描述**:该文档提供了关于UML 2.0结构的深入解释,旨在帮助建模工作者更深入地理解UML的概念体系,以便于在实际工作中更加灵活和高效地应用这些概念进行系统建模。 #### 核心知识点详述 ##### 1. UML 2.0的背景...
在面向对象编程(Object-Oriented Programming)中,Property和Attribute都是常用的概念,但是它们之间存在着本质的区别。Property是指类向外提供的数据区域,是智能的字段,其中有get和set访问器来完成字段的取值和...
本文实例分析了C#中Property和Attribute的区别。分享给大家供大家参考。具体分析如下: 在C#中有两个属性,分别为Property和Attribute,两个的中文意思都有特性、属性之间,但是用法上却不一样,为了区别,本文暂把...
不同的浏览器可能在处理`property`和`attribute`时存在差异,尤其是在早期版本的IE中,这需要开发者在编写代码时特别注意。 了解这些区别后,开发者在处理HTML元素时能够更准确地控制其行为。在操作元素的属性时,...
在C#编程中,`property`和`attribute`是两个重要的概念,它们各自有特定的用途,理解并熟练掌握它们对于编写高效、可维护的代码至关重要。 首先,我们来看`property`。在C#中,`property`是一种封装机制,它提供了...
在CSS2.0中,父元素和子元素的顶部和底部边距可能会发生塌陷,可以通过`margin-collapse`进行控制。 ### 可打印样式 CSS2.0也考虑了打印样式,通过`@media print`媒体查询,可以定义专用于打印的样式。 ### 透明度...
本文将详细介绍JavaScript中的property和attribute,并通过代码示例来展示两者之间的差异和用法。 首先,我们来了解一下property和attribute这两个单词的英文释义。在词典中,property主要有以下几种解释: 1. ...
CSS2.0是其发展过程中的一个重要版本,它在CSS1.0的基础上进行了扩展和改进,为网页设计提供了更为强大的控制力。 ### CSS2.0的关键特性 1. **选择器增强**:CSS2.0引入了更多的选择器类型,如类选择器(`.class`...
1. **选择器**:CSS2.0引入了更强大的选择器,如类选择器(`.class`)、ID选择器(`#id`)、属性选择器(`[attribute]`)以及伪类和伪元素(`:hover`, `:first-child`等),使得元素的定位更加精确。 2. **层叠规则...
### CSS2.0中文手册知识点概述 #### 一、CSS2.0简介 CSS2.0(Cascading Style Sheets Level 2 Revision 1)...以上是对CSS2.0中文手册中部分核心知识点的详细介绍,希望能帮助大家更好地理解和掌握CSS2.0的相关技术。
在**CSS2.0中文手册**中,你可以找到关于以下核心概念和特性的详细解释: 1. **选择器**:选择器是CSS的基础,用于定位HTML元素。CSS2.0引入了更强大的选择器,如类选择器(`.class`)、ID选择器(`#id`)以及属性...
2. **布局模式**:流体布局(flow layout)和定位布局(positioned layout)是CSS 2.0中的两种主要布局模式,前者遵循文档流,后者可以打破常规流,为设计提供了更多可能性。 **五、视觉效果** 1. **背景与边框**...
本文档的版本为v2.0,发布于2000年2月25日,提供了对对象类和属性类型的详细定义,以促进安全通信中的互操作性。 1. **INTRODUCTION** PKCS #9 v2.0的引入部分可能阐述了标准的目的和目标,它旨在定义一组通用的、...
7. **渐变(Gradients)**: CSS2.0没有直接支持,但在CSS3中引入了线性渐变和径向渐变。 8. **透明度(Opacity)**: 使用`opacity`属性调整元素的透明度,但不支持子元素的独立控制。 9. **媒体查询(Media ...
- **兼容性**:虽然使用 `CodeBehind` 和 `Inherits` 属性的 Web 页面在 ASP.NET 2.0 中仍然可以工作,但为了充分利用新版本的功能,建议迁移到新的代码隐藏模型。 - **性能优化**:新的代码隐藏模型有助于提高编译...
### ASP.NET 2.0中的Partial概念解析 #### 一、局部类型概念 在ASP.NET 2.0中,引入了“partial”这一概念,它主要用于C# 2.0中,通过局部类型(partial types)的方式使得开发人员能够将一个类、结构或接口分解到...
例如,`.class`用于选择具有特定类名的元素,`#id`用于选择特定ID的元素,`[attribute=value]`用于选择具有特定属性值的元素,`:hover`、`:active`和`:focus`等伪类则用于响应用户交互。 ### 2. 盒模型 CSS2.0的盒...
1. **选择器增强**:CSS 2.0引入了更多类型的选择器,如类选择器(.class)、ID选择器(#id)、属性选择器([attribute])和伪类(:hover, :active, :focus等),增强了对元素的定位能力。 2. **布局技术**:CSS ...