前言
在上一节中,我们已经学习了接口的相关知识,这节我们就来学学接口代理
的相关知识。
今天涉及知识:
- 为什么要用接口代理
- 接口代理的具体实现
2.1 逻辑场景
2.2 具体实现
一. 为什么要用接口代理
在一系列对象要实现同一个接口的时候,一般我们会用每个类都去实现这个接口,
但是,如果实现接口的子类具有明显的分类特征,这时若还是用每个实现类都直接实现接口就显得有些繁琐了,我们可以基于实现类的分类共性,先建立几个接口代理类
来分别实现该接口,然后在每个实现类去实现接口的时候,直接将具体的接口代理类
来作为参数,达到实现接口的目的。
二.接口代理的具体实现
通过上面的讲解,理解起来还是有些模糊,下面结合代码来进一步讲解接口代理
的作用。
2.1 逻辑场景
- 现在我们对所有的动物都要具备 类型属性的描述,然后飞方法描述 和 跑方法描述。
- 对于属于飞禽的动物给一个统一的处理:属于飞禽,不能跑,只能飞
- 对于属于走兽的动物给一个统一的处理:属于走兽,能跑不能飞。
2.2 具体实现
从以上描述来看,根据 1 我们需要一个总接口OnSkillListener
,代码如下:
网友评论