添加Exception抛出 和增加join函数