interface A { default String getName(){return getClass().getName() + "-" + hashCode()} } interface B { default String getName(){return getClass().getName() + "-" + hashCode()} } class C implements A,B { public String getName(){return B.super.getName();} }
如图这段代码,我想问的是类C中调用B类的getName时为什么不能直接 B.getName( ) 而是B.super.getName( )
这样写岂不是调用的是B的超类的getName()方法了吗??
是因为非静态方法不能直接调用?可是B类中getName方法已经重写了吧,用B类超类中的getName()方法就不一样了吧??
请大神解答一下!
四无小青年
相关分类