# 第四章 C 开头的术语
#### 循环引用 (circular reference)
**对象(Objects)**
在不同类中的两个属性相互引用对方的集合。只要循环引用中的两个属性都不是必需属性,`IRIS` 完全支持循环引用。如果循环引用中的两个属性都是必需属性,你将无法保存这两个类的对象。
#### 类编译器 (class compiler)
**对象(Objects)**
类编译器用于编译`IRIS` 类。你可以在 `IDE` 中使用类编译器,或者通过 ` IRIS` 对象实用库中的编译调用来使用。
#### 类定义语言 (Class Definition Language)
**对象(Objects)**
`IRIS` 的类定义语言(`CDL`)是一种基于关键字的语言,用于定义 `IRIS` 中的类。
#### 类描述符 (class descriptor)
**对象(Objects)**
包含运行时信息(方法和属性列表)的特殊类型例程,用于使用对象。
#### 类字典 (class dictionary)
**对象(Objects)**
类字典保存所有已编译类的当前类定义。`SQL` 也使用类字典来确定有效的表定义。
#### 类层次结构 (class hierarchy)
**对象(Objects)**
类层次结构显示从每个根类到其每个子类及其子类的类链。
#### 类成员 (class member)
**对象(Objects)**
属于类的元素。类成员可以是属性、方法、参数、查询、索引、触发器或 `XData` 块。
#### 类方法 (class method)
**对象(Objects)**
无论其类的实例是否在内存中,都可以调用的方法。
#### 类 (class)
**对象(Objects)**
类封装了单一实体的状态和行为。一个类包括一些类型信息和一组类成员,包括属性、方法、参数、查询和索引。
`IRIS` 支持两种主要类型的类:数据类型类和对象类。它支持多种对象类,包括抽象类、抽象持久类、持久类、可嵌入类、非注册类、注册类和系统类。
#### 客户端数据类型 (client data type)
**对象(Objects)**
客户端数据类型用于指定通过`IRIS` 对象服务器向客户端投射数据所需的信息。每个数据类型类必须有一个客户端数据类型。基于数据类型类的属性将该类的客户端数据类型投射为属性的数据类型,以供 `SQL` 和 `Java` 等客户端使用。
#### 客户端锁 (client lock)
**系统**
请参见外发锁(outgoing lock)。
#### 客户端 (client)
**系统**
运行你应用程序的机器。它连接到数据库所在的服务器机器。也指网络上的一个节点,可以向其他节点请求信息。