在定义内部类时一般会定义接口,将暴露的方法封装,避免内部类暴露 内部类需要被使用的方法,在实现的接口里定义,外部使用时直接用接口接收-->父类引用指向子类(实现类)对象