Java的多个接口和多个类的方法引用和方法调用的练习测试

接口1:

接口2:

接口二的抽象方法的形参为接口1.

类1:

类1中有一个无参无返回值的成员方法.

类2:

类2中也有一个无参无返回值的成员方法.

测试类以及运行效果1:

show()方法里面,ni调用了fun()方法,fun()的参数为Demo对象的方法引用.在主方法中调用show()方法时,方法中的参数传入的是Demo02的对象引用了该对象的成员方法,(实际show()方法中的参数是接口1的方法引用).

另外一种写法及运行效果:

将show()方法里面的ni调用的fun()中的参数修改后的运行结果为:

将调用show()方法时,该参数的参数修改为和fun()方法中的参数一样再次运行的效果为:

如此传参的话,只相当于重写了接口1的抽象方法,但在测试类的方法里面却同时调用了两个接口的默认方法,而接口2的抽象方法却没有被重写.我的理解不知道对不对,欢迎大神批评指正!!!

更正:

以上观点错误.正确的解释为:show()的参数列表中是重写了两个接口的所有抽象方法,只不过在重写NewInterface的fun()方法中仅仅是将MyInterface的抽象方法重写之后调用了一下,而fun()方法没有添加任何额外的功能.

猜你喜欢

转载自blog.csdn.net/xilin6664/article/details/89047252