stu是Speak的内部类,但是Speak类是抽象类,不能实例化,所以f方法中的参数必须是Speak的实现类,实现抽象方法public abstract void Hello();这样,当你调用stu类中的f方法时,把这个实现的实例传进来就行了
Speak类是抽象类,不能实例化,在f()方法里面定义的是一个类类型的参数 sp,然后就可以由sp调用Speak类里面的方法
父类引用子类对象