接口和接口之间的关系

继承关系

可以多继承,并且可以多层继承

注意:

1.如果多个父接口中有同名的抽象方法,那么子接口只需要实现一次即可

2.如果多个父接口中有同名的默认方法,那么子接口必须重写默认方法,必须要加default关键字3.如果多个父接口中有同名的静态方法,那么无须理会,因为静态方法只能供接口使用

4.如果多个父接口中有同名的私有方法,那么无须理会,因为私有方法只能本接口使用

接口和类之间的关系

实现关系

单实现: 一个类只实现一个接口

多实现: 一个类可以同时实现多个接口

格式:

public class 类名 implements 接口名1,接口名2,...{

}

注意:

1.如果多个接口中有同名的抽象方法,那么实现类只需要实现一次即可

2.如果多个接口中有同名的默认方法,那么实现类必须重写一次,并且要去掉default关键字

3.如果多个接口中有同名的静态方法,那么实现类无须理会,接口中的静态方法只供接口直接使用

4.如果多个接口中有同名的私有方法,那么实现类无须理会,因为接口中的私有方法只能在本接口中使用

子接口重写父接口的默认方法,必须加default关键字

实现类重写接口中的默认方法,必须去掉default关键字

一个类既可以继承另一个类,也可以实现多个接口

格式:

public class 类名 extends 父类名 implements 接口名1,接口名2,...{

}

注意:

1.如果接口父类中有同名的默认方法,优先调用父类的默认方法

2.如果接口和父类中有同名的抽象方法,那么子类必须重写一次抽象方法

普通类、抽象类和接口

普通类: 成员变量,构造方法,成员方法,静态代码块

抽象类: 成员变量,构造方法,成员方法,静态代码块,抽象方法   ---> 不能直接创建对象

接口:   常量,默认方法,静态方法,私有方法,抽象方法        ---> 不能直接创建对象

接口作为方法的参数,可以接收该接口的所有实现类的对象

接口作为方法的返回值,可以返回该接口的所有实现类的对象

Java中接口与接口和类之间的关系的更多相关文章

  1. java中的xml与实体类之间的映射

    实体类: package xml; import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement public class User ...

  2. Java 中 Map与JavaBean实体类之间的相互转化

    /** * 将一个 JavaBean 对象转化为一个  Map * @param bean 要转化的JavaBean 对象 * @return 转化出来的  Map 对象 * @throws Intr ...

  3. Servlet中常用对象及API类之间的关系

    Servlet最常用的对象: 请求对象:ServletRequest和HttpServletRequest,通过该对象获取来自客户端的请求信息 响应对象:ServletResponse和HttpSer ...

  4. 转:二十一、详细解析Java中抽象类和接口的区别

    转:二十一.详细解析Java中抽象类和接口的区别 http://blog.csdn.net/liujun13579/article/details/7737670 在Java语言中, abstract ...

  5. 关于JAVA中抽象类和接口的区别辨析

    今天主要整理一下新学习的有关于Java中抽象类和接口的相关知识和个人理解. 1 抽象类 用来描述事物的一般状态和行为,然后在其子类中去实现这些状态和行为.也就是说,抽象类中的方法,需要在子类中进行重写 ...

  6. Java 中的集合接口——List、Set、Map

    Java 中的集合接口——List.Set.Map 什么叫集合:集合就是Java API所提供的一系列类的实例,可以用于动态存放多个对象.这跟我们学过的数组差不多,那为什么我们还要学集合,我们看看数组 ...

  7. java中的标记接口(标签接口)

    Java中的标记接口(Marker Interface),又称标签接口(Tag Interface),具体是不包含任何方法的接口.在Java中很容易找到标记接口的例子,比如JDK中的Serialzab ...

  8. Java中的Serializable接口和transient关键字

    Java中的Serializable接口和transient关键字 Table of Contents 1. 向memcached中放数据时遇到NotSerializableException异常 2 ...

  9. 用好JAVA中的函数式接口,轻松从通用代码框架中剥离掉业务定制逻辑

    大家好,又见面了. 今天我们一起聊一聊JAVA中的函数式接口.那我们首先要知道啥是函数式接口.它和JAVA中普通的接口有啥区别?其实函数式接口也是一个Interface类,是一种比较特殊的接口类,这个 ...

随机推荐

  1. POJ 1386 Play on Words(有向欧拉通路 连通图)

    题意  见下方中文翻译 每一个单词能够看成首尾两个字母相连的一条边  然后就是输入m条边  推断是否能构成有向欧拉通路了 有向图存在欧拉通路的充要条件: 1. 有向图的基图连通: 2. 全部点的出度和 ...

  2. hdu 5950 Recursive sequence

    题意:告诉你数列的递推公式为f(n+1)=f(n)+2*f(n-1)+(n+1)^4 以及前两项a,b:问第n项为多少,结果对2147493647取模. 题解:有递推公式,马上应该就能想到矩阵快速幂: ...

  3. 李洪强经典面试题31- FMDB

    n什么是FMDB pFMDB是iOS平台的SQLite数据库框架 pFMDB以OC的方式封装了SQLite的C语言API p nFMDB的优点 p使用起来更加面向对象,省去了很多麻烦.冗余的C语言代码 ...

  4. bootstrap table 显示连续序号,分页有效

    参考:http://blog.csdn.net/nazhidao/article/details/51647799 第一种,通过index+1可以简单实现,但是,翻页后又重新从第一个开始 { fiel ...

  5. oc83--自定义类实现copy方法

    // // main.m // 自定义类实现copy #import <Foundation/Foundation.h> #import "Person.h" #imp ...

  6. oc81--copy内存管理

    // // main.m // Copy内存管理(MRC才有内存管理) // #import <Foundation/Foundation.h> int main(int argc, co ...

  7. 使用SimpleAdapter 适配器时显示网络上图片方法

    SimpleAdapter listItemAdapter = new SimpleAdapter(this, listItem, R.layout.items_list, new String[] ...

  8. highcharts注意事项

    var json = [ {"id":"1","tagName":"apple"}, {"id":& ...

  9. HDU4336:Card Collector

    题意 有n张卡片,每一次 有pi的概率买到第i张卡.求买到所有卡的期望购买次数. n<=20 解析 Solution 1:大力状压(就是步数除以方案数) #include<iostream ...

  10. JAVA Swing 事件监听

    EventListner 接口 它是一个标记接口,每一个监听器接口扩展.这个类定义在java.util包. 类声明 以下是声明java.util.EventListener接口: public int ...