调整位置,增加对非法类型转换的判断