多项选择题

A.使用OCL在类上或者在类模型的类型上定义不变量
B.使用OCL对构造型定义类型不变量
C.将OCL作为一种查询语言
D.使用OCL描述操作和方法的前置和后置条件