Updated : 用类去封装