java封装继承多态详解