1.语法:

  interface 接口名{

    属性

    抽象方法

  }

2.实例:

3.注意:

  1)类实现接口可以通过implements实现,实现接口的时候必须把接口中的所有方法实现,一个类可以实现多个接口。(因为里面全部是抽象方法)

  2)接口中定义的所有的属性默认是public static final的,即静态常量既然是常量,那么定义的时候必须赋值。

  3)接口中定义的方法不能有方法体。接口中定义的方法默认添加public abstract

  4)有抽象函数的不一定是抽象类,也可以是接口类。

  5)由于接口中的方法默认都是抽象的,所以不能被实例化。

  6)对于接口而言,可以使用子类来实现接口中未被实现的功能函数。

  7)如果实现类中要访问接口中的成员,不能使用super关键字。因为两者之间没有显示的继承关系,况且接口中的成员成员属性是静态的。可以使用接口名直  接访问。

  8)接口没有构造方法(因为接口里面的成员变量都会赋值,不需要构造方法来赋值)。

4.接口的作用分析

 

  1)重要性:

    在Java语言中, abstract class 和interface 是支持抽象类定义的两种机制。 正是由于这两种机制的存在,才赋予了Java强大的 面向对象能力。

  2)简单、规范性:

    如果一个项目比较庞大,那么就需要一个能理清所有业务的架构师来定义一些主要的接口,这些接口不仅告诉开发人员你需要实现那些业务,而且也将命  名规范限制住了(防止一些开发人员随便命名导致别的程序员无法看明白)。

  3)维护、拓展性:

    比如你要做一个画板程序,其中里面有一个面板类,主要负责绘画功能,然后你就这样定义了这个类。

可是在不久将来,你突然发现这个类满足不了你了,然后你又要重新设计这个类, 更糟糕是你可能要放弃这个类,那么其他地方可能有引用他,这样修  改起来很麻烦。

    如果你一开始定义一个接口,把绘制功能放在接口里,然后定义类时实现这个接 口,然后你只要用这个接口去引用实现它的类就行了,以后要换的话只  不过是引用另一 个类而已,这样就达到维护、拓展的方便性。

  4)安全、严密性:

    接口是实现软件松耦合的重要手段,它描叙了系统对外的所有服务,而不涉及任何具体的实现细节。这样就比较安全、严密一些(一般软件服务商考虑的  比较多)。

19. 接口(创建interface 继承implements)的更多相关文章

  1. 实现Callable接口创建线程

    创建执行线程有四种方式: 实现implements接口创建线程 继承Thread类创建线程 实现Callable接口,通过FutureTask包装器来创建线程 使用线程池创建线程 下面介绍通过实现Ca ...

  2. JAVA 构造器, extends[继承], implements[实现], Interface[接口], reflect[反射], clone[克隆], final, static, abstrac

    记录一下: 构造器[构造函数]: 在java中如果用户编写类的时候没有提供构造函数,那么编译器会自动提供一个默认构造函数.它会把所有的实例字段设置为默认值:所有的数字变量初始化为0;所有的布尔变量设置 ...

  3. 接口interface,接口继承implements

    php中,只支持从一个类继承,不支持从两个或者更多的类同时继承.从两个或者两个以上的类继承的能力被称为多重继承.php在设计上是禁止这种功能的.原因在于,避免多个类带来的复杂性.当发现需要从两个或者更 ...

  4. 抽象(abstract)升级版变接口(interface) 继承(extends)升级版叫实现(implements) 升级版啊升级版 接口可以多继承

    Client --------------------------------------------------- public class Client{ public static void m ...

  5. 面向对象_06【抽象类:abstract、接口:interface、实现:implements】

    抽象类:abstract抽象:没有足够的描述功能,事物不具体的描述,却又有共性. 特点: 1,方法只有声明没有实现时,该方法就是抽象方法,需要被abstract修饰,抽象方法必须定义在抽象类中,该类也 ...

  6. JAVA之旅(七)——final关键字 , 抽象类abstract,模板方法模式,接口interface,implements,特点,扩展

    JAVA之旅(七)--final关键字 , 抽象类abstract,模板方法模式,接口interface,implements,特点,扩展 OK,我们继续学习JAVA,美滋滋的 一.final 我们来 ...

  7. java基础13 接口(及关键字:interface、implements)

    接口 1.接口的定义格式 interface 接口名{ } interface :接口的关键字 implements:实现接口的关键字 2.接口的作用 1.程序的解耦.(低耦合)        2.定 ...

  8. 用关键字interface定义接口,通过关键字implements来实现接口

    [定义]Java中,能够完成特定功能的,由若干属性和方法组织成的,相对独立的属性和方法的集合. [用途]实现类的多继承,以解决Java只能单继承,不支持多继承的问题. [特点] 用关键字interfa ...

  9. 接口是否可继承接口? 抽像类是否可实现(implements)接口? 抽像类是否可继承实体类(concrete class)?

    接口是否可继承接口? 抽像类是否可实现(implements)接口? 抽像类是否可继承实体类(concrete class)? 1. 接口可以继承接口. 2. 抽像类可以实现(implements)接 ...

随机推荐

  1. Linux入门命令

    ####常用的目录 /主目录 ① /root:存放启动Linux时启动的核心文件,包括一些连接文件以及镜像 ② /bin:binary的缩写,存放经常使用的命令 ③ /dev:Device(设备)的缩 ...

  2. linux 重启mysql redis等服务器

    redis重启 如果是用apt-get或者yum install安装的redis, 可以直接通过下面的命令停止/启动/重启 /etc/init.d/redis-server stop /etc/ini ...

  3. day09 python函数 返回值 参数

    day09 python   一.函数     1.函数         函数是对功能的封装         语法:         定义函数:             def 函数名(形参):    ...

  4. java多线程面试题选择题大全含答案

    v java多线程面试题选择题大全含答案 java多线程面试题选择题大全含答案 1.下面程序的运行结果()(选择一项)public static void main(String[] args) {T ...

  5. Qt 【关于跳转页面后当前页面(委托delegate)数据丢失的问题】

    这个是一个很低级的错误,之前po主急着完成任务,也是没注意看,窗口跳窗如下图所示: 这个过程中都是click促发槽然后B*pB,pB->show,同理A*pA,pA->show,这个过程中 ...

  6. js 加载验证码

    <img id="captchaPic" src="{{captcha_src('math')}}" onclick="this.src='{{ ...

  7. XML解析方式有哪些?

    1.DOM:要求解析器吧整个XML文档装载到内存,并解析成一个Document对象. (1).优点:元素与元素之间保留结构关系,故可以进行增删改查操作. (2).缺点:XML文档过大,可能出现内存溢出 ...

  8. 「NOI2016」循环之美(小性质+min_25筛)

    传送门. 题解 感觉这题最难的是第一个结论. x/y首先要互质,然后如果在10进制是纯循环小数,不难想到y不是2.5的倍数就好了. 因为十进制下除以2和5是除得尽的. 必然会多出来的什么东西. 如果是 ...

  9. PHP的开源产品discuz

    首先就是discuz,用起来真的是特别的好用,搭建的网站真的非常美观 尤其是用起来之后,我发现功能真的是太强大了,不用到处编写代码,调试什么 只需要把精力放在做产品上就可以了,我很好奇为什么会这么强大 ...

  10. BZOJ 3159: 决战 解题报告

    BZOJ 3159: 决战 1 sec 512MB 题意: 给你一颗\(n\)个点,初始点权为\(0\)的有跟树,要求支持 Increase x y w 将路径\(x\)到\(y\)所有点点权加上\( ...