接口的探究

原创 2016年08月29日 01:16:41

第一次用 markdown (^-^)V 试试手

1、接口的概念

特殊的抽象类

2、接口的特点

1、实现了类的多继承
2、解耦合
3、增加了程序的通用性

3、接口与抽象类的区别

类别 属性 方法
抽象类 可以不赋值 1、作为父类,可以有其他方法2、作为子类,继承关键字为extends(单继承类,多继承接口) 3、其实现的子类,为public
接口 必须赋值 1、作为父类,必须是抽象方法(abstract可省略)2、作为子类,继承关键字:implements(可多继承接口)3、其实现的子类,为public

最后贴上练习代码君:

package com.jacob.javase;

/*
 * 接口:
 * 1.概念:
 * 接口是特殊的抽象类
 * 2.关键字
 * 3.好处:
 * 3.1 增加了程序的通用性
 * 3.2 实现了特殊的多继承:
 * 例如: 1.手机可以分为拍照手机和通用手机
 *      2.照相机可以分为单反照相和数码照相
 *      3.那照相又可以分为拍照手机和照相机
 * 3.3 解耦合
 * 
 */
// 2.1 Interface:代替class的书写//
// 注意点:接口中全是抽象方法且 abstract可忽略不写
interface MyIntf1 {
    // 属性必须初始化(抽象类不需要)
    int id = 1;
    String name = "xieji";

    public void m1();

    void m2();
}

// 2.2.1 extends :接口可以继承接口;相当于并集——不需要覆写父类接口的方法
// 2.2.2 接口可以多继承接口(不能继承类)
// 2.2.3 注意点:子类是接口的时候:关键字只能使用extends
// 子类是类的时候,关键字只能使用implements
interface MyIntf2 extends MyIntf1 {
    void m3();
}

// 2.3 implements:类继承接口:类可多继承接口
public class InterfaceTest implements MyIntf2 {
    // 2.3.1 需要覆写继承接口的全部方法且访问修饰符必须是public
    public void m1() {
        System.out.println("覆写m1");
    }

    public void m2() {
        System.out.println("覆写m2");
    }

    public void m3() {
        System.out.println("覆写m3");
    }

    public static void main(String[] args) {
        // 实例化找其子类
        MyIntf1 a = new InterfaceTest();

    }
}
版权声明:本文为博主原创文章,未经博主允许不得转载。

探究java接口中的变量与方法

关于变量 java接口里的变量都是默认 pubic static final的 为啥? public 接口得能被所有对象调用 static 这个变量是属于接口本身,而不是实现了接口的对象的 具...

Set接口的iterator方法源码探究

今天在学习nio的过程时,突然发现个小细节平时都没有注意到的,大家都知道Set接口中有一个iterator方法可以进行迭代, 不过估计很多人都没有太注意Iterator接口的remove方法,该方法...

QQ的HTTP接口协议探究

1、找寻支持QQ HTTP协议的服务器。 大家也许会被一些假像所迷惑,也许会认为QQ的HTTP服务器是基于80口进行通信的(如:218.17.209.23:80),其实不然,正真基于HTTP的服务...
  • aitvkx
  • aitvkx
  • 2012年01月01日 18:01
  • 484

探究golang接口

今天看了《Go 语言中的方法,接口和嵌入类型》所以想对比以前对C/C++相关知识进一步理解golang的接口、指针、参数传递。接口根据《Go 语言中的方法,接口和嵌入类型》的描述可以看出,接口去调用结...
  • cnsword
  • cnsword
  • 2015年03月13日 15:43
  • 5477

mybatis中接口没有实现类的动态代理探究

首先解释下,标题的意思,一般在java动态代理中,委托类一般都是实现某接口的具体类,但最近在看mybatis源码的时候,发现mybatis中的mapper接口(XML接口用java接口来描述)并没有实...

有关ListIterator接口的add与remove方法探究

ListIterator接口继承自Iterator接口,新增了add()方法。关于ListIterator的add()以及remove()方法的作用,《java核心技术 卷I》里如下表述可能有点歧义,...

Callable接口探究

一种具有类型参数的泛型,类型参数表示的是从call()中返回的值) 创建接口的思路 1)创建Callable实现类+重写call; 2)借助执行调度服务ExecutorService,获取Fut...

C#实现QQ接口软件--QQ的HTTP接口协议探究

1、找寻支持QQ HTTP协议的服务器。 大家也许会被一些假像所迷惑,也许会认为QQ的HTTP服务器是基于80口进行通信的(如:218.17.209.23:80),其实不然,正真基于HTTP的服务器...

接口测试工具

  • 2017年12月13日 15:40
  • 16.49MB
  • 下载

IBM_Support接口服务器

  • 2017年12月12日 16:54
  • 1.06MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:接口的探究
举报原因:
原因补充:

(最多只允许输入30个字)