接口与抽象类的关系
来源:互联网 发布:IP仿冒Mac地址上网 编辑:程序博客网 时间:2024/05/29 18:57
今天看代码的时候,发散了一下抽象类与接口之间的实现与继承关系。这里就不罗列什么是接口和抽象类了。在这里理下一他们的关系:
- 普通类可以实现多个接口,但是只能单继承一个抽象类
- 抽象类可以实现多个接口,但是只能单继承一个类(普通类、抽象均可)
- 接口可以继承多个接口,但是不能继承类(普通类、抽象均不可)-其实这个接口继承类的说法就不对,接口是对行为的抽象,抽象类是对类的抽象,两都不能混在一起看,所以你想用接口去继承类,那感觉就是喝葡萄酒加雪碧。
- 抽象类与普通类没什么区别,唯一的区别是抽象类不能实例化对象,可以有抽象方法。
- 普通类继承和实现接口的时候,必须把他们的方法全部实现,如果不全部实现,那么自己会变能abstract类,即抽象类。
上一些代码方便理解:
// interface Questpublic interface Quest { void embark();}//interface Cinterface C{ void ark();}//abstract class Aabstract class A{ //abstract method abstract void methodA(); //instance method void method(){ System.out.println("abstract classA's instance method!"); }}//abstract class Dabstract class Q{ //abstract method abstract void methodQ(); //instance method void method(){ System.out.println("abstract classD's instance method!"); }}//一个类可以实现多个接口,但是只能单继承一个类(包括抽象类)class B extends A implements Quest, C{ //interface Quest.embark() @Override public void embark() { } //interface C.ark() @Override public void ark() { } //abstract A.methodA() @Override void methodA() { }}//抽象类可以实现多个接口abstract class K implements Quest, C{}//接口可以继承多个接口interface X extends Quest, C{}/*//一个类不能继承多个类class B extends A, D{}//接口不能继承抽象类interface I extends K{}*/
1 0
- 抽象类,接口,与类的关系
- 抽象类与接口之间的关系
- 抽象类与接口的关系
- 抽象类与接口的关系
- 抽象类与接口之间的关系
- 抽象类与接口的关系
- Java:抽象类与接口的关系
- 接口与抽象类的关系
- java中抽象类与接口的区别与关系
- JAVA抽象类 接口 final 类与类的关系
- 继承、抽象类和接口的特点与关系
- 抽象类与接口之间的继承和实现关系
- java中抽象类与接口的关系图解
- 抽象类,接口继承与实现关系
- 接口与抽象类关系对照
- 类、抽象类、接口之间的关系
- 类、抽象类、接口之间的关系
- 抽象类和接口的关系对比
- DTCMS做插件
- 正则表达式 \b
- Android SharedPreferences存储基本数据类型、List集合、Map集合、对象都在这了
- dwr3.0服务器推送技术Demo
- 015-使用 docker history 查看镜像的构建过程
- 接口与抽象类的关系
- js原生写图片轮播和切换
- XML语法小结
- Linux常用快捷键
- Linux的yum 遇上“ no more mirrors to try ”
- mysql 一对多 查询 出一行数据
- python 中图像用SimpleITK和numpy.ndarray表示的差异
- SpringMVC 中文件上传 MultipartResolver两种使用方式及简单源码分析
- jQuery的 each方法,each(function(){})