• 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();
    }
  • 相关阅读:
    负载均衡之数据链路层
    阿里云CentOS6.8安装MySQL5.6
    Maven clean命令不能执行问题Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.5:clean (default-clean) on project
    Oracle数据库不能创建表空间及表中文乱码问题
    win7物理主机与虚拟XP系统互相ping不通解决方法
    Linux严格区分大小写
    java的Date类型转换为MySQL数据库的Date类型
    Spring框架中的AOP技术----注解方式
    Ajax实现验证码异步校验
    Spring框架中的AOP技术----配置文件方式
  • 原文地址:https://www.cnblogs.com/endust/p/11831884.html
Copyright © 2020-2023  润新知