接口

什么是接口?

生活中也有很多的接口,比如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. maven的核心概念——坐标

    7.1 几何中的坐标 [1]在一个平面中使用x.y两个向量可以唯一的确定平面中的一个点. [2]在空间中使用x.y.z三个向量可以唯一的确定空间中的一个点. 7.2 Maven的坐标 使用如下三个向量 ...

  2. 【Flutter】环境搭建以及HelloWorld创建

    平台:WIndows10 Android Studio VScode同理,具体可以参考Flutter中文站 配置环境 1.下载SDK,进入官网选择最新的即可.我这里选择的是v1.9.1+hotfix. ...

  3. 在RYU中实现交换机的功能

    首先源码,解析部分如下,同时可以参考RYU_BOOK上的解释说明  原文链接参考:https://blog.csdn.net/qq_34099967/article/details/89047741 ...

  4. PHP错误日志文件Warning:PHP Startup: Unable to load dynamic library...

    由于我的环境是通过源码编译安装的,安装的时候配置信息和一些其他扩展没安装或设置好: php.err文件一直有这些提示,虽然不影响服务启动,但是看着心好累啊,决定要消灭他们. 问题描述: 出现原因: 上 ...

  5. 1级搭建类110-Oracle 18c SI FS(Windows Server 2019)公开

    Oracle 18c 单实例文件系统在Windows Server 2019上的安装 在线查看

  6. python3练习100题——050

    题目:输出一个随机数. 程序分析:使用 random 模块. import random print( random.randint(1,10) ) # 产生 1 到 10 的一个整数型随机数 pri ...

  7. Nginx proxy_cache 缓存静态文件

    原文链接:https://blog.csdn.net/bjgaocp/article/details/87867521 创建缓存目录mkdir /tmp/ngx_cache 添加下面语句在http{ ...

  8. css动画延迟好像有点怪

    项目中需要使用到动画animate.css,在自定义的时候发现设置animation-delay 和 animation-duration 的总时间不对会导致 动画缺失. 比如 bounceInLef ...

  9. Leetcode Week4 Find Minimum in Rotated Sorted Array II

    Question Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforeha ...

  10. Win7最后一天,微软开始慌了!

    就在昨天(2020年1月14日),服役十年的Win 7正式退出了微软舞台,从2009推出到2019,这十年也是很多90后的青春. 当然微软官方也做了送别,当然其目的也是为了推广Win10! 甚至面对痛 ...