接口

什么是接口?

生活中也有很多的接口,比如USB接口。
定义了接口就是定义了调用对象的标准。

接口基本语法

1、使用interface定义;
2、接口当中的方法都是抽象方法;因为抽象函数不能生成对象,因此接口也不能生成对象;
3、接口当中的方法都是public权限;

4、实现接口用implements关键字;

5、一个类可以实现多个接口,比如手机既可以支持USB,也支持WIFI;

6、一个接口可以继承多个接口;

实现接口用implements关键字

public class USBPhone implements USB{

}

下面还是用代码说明。

例一

定义一个USB.java接口

interface USB{
void read();
void write();
}

编写USBPhone.java文件,实现接口并对继承的对象方法进行复写:

public class USBPhone implements USB{
public void read(){
System.out.println("Reading");
}
public void write(){
System.out.println("Writing");
}
}

编写Test.java:

public class Test{
public static void main(String[] args){
USB u = new USBPhone();
u.read();
u.write();
}
}

输出结果:

D:\Java\code\练习十>java Test
Reading
Writing

例二

新建一个WIFI接口:

interface WIFI{
void open();
void close();
}

对例一中USBPhone.java进行重命名为Phone.java,实现继承多个接口并对抽象方法进行复写:

public class Phone implements USB,WIFI{
public void read(){
System.out.println("USB is Reading");
}
public void write(){
System.out.println("USB is Writing");
}
public void open(){
System.out.println("WIFI is open");
}
public void close(){
System.out.println("WIFI is close");
}
}

修改Test.java:

public class Test{
public static void main(String[] args){
USB u = new Phone();
u.read();
u.write();
WIFI w = new Phone();
w.open();
w.close();
}
}

输出结果为:

D:\Java\code\练习十>java Test
USB is Reading
USB is Writing
WIFI is open
WIFI is close

  

例三

A.java

interface A{
void funcA();
}

B.java:

interface B{
void funcB();
}

C.java,在C.java中继承A和B,而不是实现A和B的原因是接口当中的方法都是抽象方法,如果用implements就要对抽象方法进行复写。

interface C extends A,B{
void funcC();
}

java基础(十三)之接口的更多相关文章

  1. Java基础-通过POI接口处理xls

    Java基础-通过POI接口处理xls 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.

  2. Java基础-Collection子接口之Set接口

    Java基础-Collection子接口之Set接口 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 学习Collection接口时,记得Collection中可以存放重复元素,也可 ...

  3. Java基础-Collection子接口之List接口

    Java基础-Collection子接口之List接口 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们掌握了Collection接口的使用后,再来看看Collection接口中 ...

  4. 《Java基础——抽象与接口》

    Java基础--抽象与接口       一.抽象: 规则: 关键字 abstract 修饰的类称为抽象类. 子类通过关键字extends实现继承. 关键字 abstract 修饰的方法称为抽象方法,抽 ...

  5. Java基础(十三)--深拷贝和浅拷贝

    在上篇文章:Java基础(十二)--clone()方法,我们简单介绍了clone()的使用 clone()对于基本数据类型的拷贝是完全没问题的,但是如果是引用数据类型呢? @Data @NoArgsC ...

  6. Java 基础三、接口与内部类

    1.   在Java程序语言中,接口是对类的一种描述.例如Arrays类中sort方法声明可以对对象进行排序,但前提是对象所属的类必须实现Comparable接口. public interface ...

  7. Java基础—抽象类和接口

    1.抽象类 在Java语言中使用abstrac关键字来定义抽象类和抽象方法,抽象方法没有定义,方法名后面直接跟一个分号,而不是花括号. public abstract class Employee { ...

  8. java基础-抽象类与接口(转)

    抽象类与接口是java语言中对抽象概念进行定义的两种机制,正是由于他们的存在才赋予java强大的面向对象的能力.他们两者之间对抽象概念的支持有很大的相似,甚至可以互换,但是也有区别. 一.抽象类    ...

  9. Java基础——抽象类和接口

    之所以将抽象类和接口放在一起做笔记,是因为他们之间很难区分又各自独立.在学习完Java程序设计的三大特点(封装.继承.多态)之后,我最大的收获是,慢慢理解了Java语言这种面向对象程序设计的优越性,它 ...

随机推荐

  1. PhpStorm+Xdebug配置单步调试PHP

    (一)php安装xdebug扩展,PHPStorm+XDebug单步调试 (二)PHPStorm配置XDebug (三)PHPStorm使用XDebug调试 (四)PhpStorm+Xdebug配置单 ...

  2. python线程的条件变量Condition的用法实例

      Condition 对象就是条件变量,它总是与某种锁相关联,可以是外部传入的锁或是系统默认创建的锁.当几个条件变量共享一个锁时,你就应该自己传入一个锁.这个锁不需要你操心,Condition 类会 ...

  3. Python 文件&异常 初学者笔记

    文件 读取整个文件 with open('pi_30_digits.txt') as file_object :#Python在当前执行文件目录寻找指定文件#filename = 文件的绝对路径或相对 ...

  4. js替换时,空格被替换为双引号

    替换代码 str.replace(/\"/g, "'") 将双引号替换为单引号,如果字符串中,存在space(空格)时,使用以上语句将会导致空格被替换为双引号,可以使用如 ...

  5. gulp常用插件之del使用

    更多gulp常用插件使用请访问:gulp常用插件汇总 del这是一款删除文件的工具. 更多使用文档请点击访问del工具官网. 安装 npm install del API del(patterns, ...

  6. IntelliJ IDEA 如何彻底删除项目的步骤

    原文参考链接:https://www.jb51.net/article/129473.htm 本文介绍了IntelliJ IDEA 如何彻底删除项目的步骤,分享给大家,顺便给自己留个笔记,具体如下: ...

  7. 【算法】用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。

    public class Solution { Stack<Integer> stack1 = new Stack<Integer>(); Stack<Integer&g ...

  8. HTML5,从零开始

    一.网页的组成部分 <!DOCTYPE html> <html> <head> <title>这是标题</title> <meta c ...

  9. IntelliJ IDEA 2019年最新版2019.3.1 安装激活教程【最强,可用至2100、2089年】

    IntelliJ IDEA 2019年最新版 永久激活教程 本文包括最新[2019.3.1 & 1.3]激活 和[2018.3.2]激活 说明:①2019.3.②2019.1.③2018.3版 ...

  10. 4级搭建类401-Oracle 19c Non-CDB DG搭建(Linux 主备一对一 LGWR ASYNC)公开

    项目文档引子系列是根据项目原型,制作的测试实验文档,目的是为了提升项目过程中的实际动手能力,打造精品文档AskScuti. 项目文档引子系列除特定项目目前不对外发布,仅作为博客记录,其他公开.如学员在 ...