当前位置: 首页 > 编程笔记 >

综合属性和继承属性之间的区别

红朝
2023-03-14
本文向大家介绍综合属性和继承属性之间的区别,包括了综合属性和继承属性之间的区别的使用技巧和注意事项,需要的朋友参考一下

合成属性和继承属性都是语言语义的一部分,该语言为其构造提供含义,例如标记和语法结构。语义有助于解释符号,符号的类型及其相互之间的关系,其分析可判断源程序中构造的语法结构是否衍生出任何含义。现在,基于属性的特征,我们可以区分综合属性和继承属性

以下是合成属性和继承属性之间的重要区别。

序号 综合属性 继承的属性
1 定义 合成属性是一个属性,其解析树节点的值由子节点上的属性值确定。为说明起见,假设以下生产S→ABC,如果S从其子节点(A,B,C)获取值,则为称为合成属性,因为ABC的值合成为S。 另一方面,如果某个属性的解析树节点值由父级和/或同级节点上的属性值确定,则该属性称为“继承的”属性。在S→ABC的情况下,如果A可以从S,B和C中获取值。B可以从S,A和C中获取值。同样,C可以从S,A和B中获取值,那么S被称为继承属性。
2 设计 如上 ,在“合成”属性的情况下,产品必须以非终端为首。 另一方面,在“继承”属性的情况下,生产主体中的符号必须具有非终结符。
3 评价 可以在分析树的单个自底向上遍历期间评估合成属性。 另一方面,可以在分析树的单个自顶向下和横向遍历期间评估Inherited属性。
4 终奌站 终端和非终端都可以包含“合成”属性。 另一方面,只有非终端可以包含Inherited属性。
5 用法 S属性SDT和L属性STD都使用Syntherated属性。 另一方面,仅L所属的SDT使用Inherited属性。
 类似资料:
  • 问题内容: 对于“属性”和“属性”之间的区别,我通常感到困惑,并且找不到很好的资源来简洁地详细说明这些区别。 问题答案: 属性是一种特殊的属性。基本上,当Python遇到以下代码时: 它查找中,然后检查,看它是否有一个,或方法- 如果这样做,这是一个性质。如果它 是 一个属性,则不仅会返回该对象(就像对其他任何属性一样),还会调用该方法(因为我们一直在进行查找),并返回该方法返回的内容。 有关Py

  • 在OWL中,不可伸缩属性的子属性也是不可伸缩的吗?同样,非对称属性的子属性也是非对称的吗? 从逻辑上讲,它们应该是这样的,但我在OWL文档中找不到任何说明这种情况的内容。 考虑以下示例: 基于此本体,不允许出现以下情况,因为的父项是不可伸缩的: 但是是否也隐含地不反射性呢?换句话说,这是否也被禁止: 如果你认为一个属性是一组连接成对的点的箭头,那么不可反身仅仅意味着没有在同一个点开始和结束的箭头。

  • 问题内容: 我是Swift的新手。计算属性和设置为闭包的属性之间有什么区别?我知道每次都会重新计算一个计算属性。封盖是否有所不同?即 关闭: 计算: 问题答案: 第一个是通过闭包初始化的存储属性。第二个是计算属性。 存储的属性的初始化关闭被调用一次,只有一次,但你可以改变存储的属性值(除非您更换同)。当您希望封装代码以在单个简洁的代码块中初始化存储的属性时,此功能很有用。 但是,每次引用变量时都会

  • > RDF/OWL中继承的含义是什么? 是否可以用OWL/RDF构造面向对象语言类型的类-子类继承? 请考虑以下示例。是否“讲师”和“学生”的所有属性都将提供给“人”类? 如果有人提供给我一个很好的例子,这将是非常有帮助的答案。提前谢谢你。

  • 问题内容: 我是刚开始学习Python的Java人。举个例子: 我肯定有很多冗余代码(我知道在Java中,上面的代码有很多冗余)。 对于已经从父类继承了哪些属性,哪些部分是多余的? 问题答案: 在python中为类编写函数时,应始终调用其超类的函数。我们可以使用它直接将相关属性传递给超类,因此您的代码如下所示: 正如其他人指出的那样,您可以替换该行 与 并且代码将执行相同的操作。这是因为pytho

  • 我有几个配置文件,比如: application.yaml 我想我需要一些定制属性spring Binder.class定制,但我找不到任何解决方案。 提前感谢!