zoukankan      html  css  js  c++  java
  • java基础(十三)之接口

    接口

    什么是接口?

    生活中也有很多的接口,比如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:Javacode练习十>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:Javacode练习十>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();
    }
  • 相关阅读:
    使用element-ui组件el-table时需要修改某一行样式(包含解决样式无效的问题)或某一列的样式
    面试题:线程A打印1-10数字,打印到第5个数字时,通知线程B
    面试题:不使用数学库求平方根
    Springboot2.x集成Redis集群模式
    Springboot2.x集成Redis哨兵模式
    Springboot2.x集成单节点Redis
    基本算法:冒泡排序算法
    Redis进阶:Redis的哨兵模式搭建
    Redis进阶:Redis的主从复制机制
    Redis的消息订阅及发布及事务机制
  • 原文地址:https://www.cnblogs.com/endust/p/11831884.html
Copyright © 2011-2022 走看看