抽象类与接口的区别
2015-09-24 10:30
239 查看
(初学者 有些说的不对的地方还望多多指教。。。)
1:抽象类是对类的共性抽象,接口是对行为动作的抽象。
比如说 公狗,母狗,野狗,它们的抽象类就是狗,再比如,狗,鸡,鸭,它们都能跑,那么这就可以把跑这个行为抽象到接口里。
2:抽象类的方法可以是抽象也可以是具体,接口里的方法只能是抽象。
上面说了狗,鸡,鸭,能跑,但是可以确定的是狗是4条腿跑,而鸡鸭确是两条腿在跑,这样接口是没办法具体这些行为,所以接口的方法都是抽象的,而狗的抽象类却能具体出4条腿在跑这个行为,一样也可以抽象出跑这个行为。
3:接口可以多实现,抽象类只能单继承
跑这个动作基本上是所有的动物都能做到的,所以这个动物都能实现带有跑这个抽象行为的接口,所以说接口是可以被多实现的。但是公狗,母狗,野狗只能是狗,不能是鸡鸭,所以说抽象类只能单继承。
1:抽象类是对类的共性抽象,接口是对行为动作的抽象。
比如说 公狗,母狗,野狗,它们的抽象类就是狗,再比如,狗,鸡,鸭,它们都能跑,那么这就可以把跑这个行为抽象到接口里。
2:抽象类的方法可以是抽象也可以是具体,接口里的方法只能是抽象。
上面说了狗,鸡,鸭,能跑,但是可以确定的是狗是4条腿跑,而鸡鸭确是两条腿在跑,这样接口是没办法具体这些行为,所以接口的方法都是抽象的,而狗的抽象类却能具体出4条腿在跑这个行为,一样也可以抽象出跑这个行为。
3:接口可以多实现,抽象类只能单继承
跑这个动作基本上是所有的动物都能做到的,所以这个动物都能实现带有跑这个抽象行为的接口,所以说接口是可以被多实现的。但是公狗,母狗,野狗只能是狗,不能是鸡鸭,所以说抽象类只能单继承。
相关文章推荐
- 查看局域网内在线ip
- linux环境变量/etc/profile文件修改错误
- 武汉龙星计划之论文选题篇
- 解决ubuntu解压windows生成的zip文件时乱码问题
- HttpServletRequest.getRemoteAddr()之代理提交
- 杭州或率先放开非公司化专车
- 黑马程序员学习(八) FIle类基本操作汇总
- 21个webApp前端开发问题
- BOOL和bool的区别
- 浅析Asp.net MVC 中Ajax的使用
- Java基本数据类型总结
- ReLu(Rectified Linear Units)激活函数
- java 接口及抽象类
- log4j配置
- MFC中的句柄
- Metrics.NET report to Zabbix
- photoview
- 在命令行中执行java的时候指定依赖jar
- Reflect-Java
- crontab的安装和使用