加入二次封装代码，主要用法就是继承此类