关于java接口的一个问题

img


我不理解,我画的这个紫色的这个地方,大家能为我解答一下嘛,谢谢大家!

多态: 同一个对象,在不同时刻表现出来的不同形态,提高代码的复用率。
详细代码解读:在主方法main中
第一句 实例化一个对象board,
第二句 调用的该类中的方法,传入参数是(一个新的PhilipsCorp()) , 进到类中show方法时。
传入是PhilipsCorp(),但是接收是Advertisement类型。
原因:Advertisement是接口,有多个实现类。
例如:动物可以包含大象,老虎,猫,狗等等,show中使用动物接收,那么你调用方法时传老虎,猫,狗都是动物,都可执行。
若是一个实体动物对应一个show方法太过于繁琐。
AdvertisementBoard是工具类,就是直接实例化一个它,然后.方法可以完成不同品牌的执行。若是形参Advertisement adver换成一个一个实体对象(飞利浦啥的),那么需要一个品牌重载一个品牌。

接口就是抽象的,根据抽象的方法,通过继承,实现,向上引用,传参,控制方法里传参的对象,让一个方法产生多种效果,实现多态

多态

这是一种设计模式-策略模式,定义方法的入参是一个接口,实际调用这个方法的时候传进来的是接口的实现类,这样里面的adver.getCorpName(),就是实现类里的方法。