如何用interface和abstract类解决实际问题?首先明确接口和类,接口和抽象类之间到底什么关系?
案例示意图
接口Edible,包含抽象方法howtoeat(),其中设定两个抽象类Animal和Fruit类。对于Fruit都可以食用(例如Apple 等),对于Animal来讲,有特殊的动物(Tiger国家保护,不可食用,不能实现该接口),所以要根据实际情况进行实现。(源码可以自己尝试实现,若需要可以联系我)
由此需要复习,知道一些基本知识点是关键,下面我进行了总结
接口与类的关系
- 为了使用该接口,要编写一个实现接口的类
- 如果一个类要实现接口,必须实现接口中所有抽象方法
否则这个类只能是抽象类 - 多个无关类可以实现一个接口,一个类可以实现多个无关接口
- 一个类可以在继承一个父类同时,实现一个或多个接口
接口和抽象类区别?
- 接口不能含有非抽象方法,抽象类可以
- 类可以实现多个接口,但只能有一个父类
- 没有联系的类,也可以实现一个接口