实现了全部方法!