方法拆分，未测试