循环定义的逻辑错误有哪些类型