首页  >  文章  >  Java  >  抽象类与接口的定义与区别

抽象类与接口的定义与区别

零下一度
零下一度原创
2017-07-18 17:52:491342浏览

1.什么是抽象类?

如果多个类具有相同性质的行为,比如,人行走,动物行走,行走就是人与动物两个不同的类中性质相同的行为,为了便于管理,可以将这些行为抽象出来集中到一个类中,这样就产生了一个集中了多个类共同行为的类,这个类就是抽象类。

2.什么是接口?

两个类不仅有相同性质的行为,还有不同性质的行为,比如,人睡觉,鸟儿睡觉,鸟儿飞翔,睡觉是人与鸟共同的行为,可以定义到抽象类中,而飞翔不是人与鸟共同的行为,不可以定义到抽象类中,可以把这个非共享行为定义到一个特殊的类中,这个特殊的类就是接口。

3.区别

以n个类为研究对象,n个类共同的行为定义在抽象类中,部分类共享而共享类数目未达到n的行为定义在接口中。

抽象类反映的是整体的共性,接口反映的是局部的共性。

抽象类与接口的选择取决于关注的范围。如果关注的范围很小,这个小范围内的对象所抽象出的类的行为都相同,可以使用抽象类管理共同的行为。如果关注的范围比较大,在这个大范围内,某些行为只为部分对象所共享,那么这些行为只能定义在接口中。

以上是抽象类与接口的定义与区别的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn