改写为CoraData直接提供tableView数据，增加了2个抽象类