栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java的接口

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java的接口

接口将方法声明与实现分离,一个接口可以有多个实现类,一个类也可以实现多个接口。

定义接口

使用interface关键字。如public interface Life{}。

这里定义两个接口:Work(工作)接口,Life(生活)接口。

接口中的方法都是public的,并且可以省略不写,如void makeMoney();。

public interface Work {
    // 赚钱
    void makeMoney();
}
public interface Life {
    // 玩游戏
    void playGame();

    // 默认方法(Java8)
    default void sleep() {
        System.out.println("睡觉");
    }

    // 静态方法(Java8)
    static void print() {
        System.out.println("静态方法");
    }
}
  • 接口可以有默认方法和静态方法,如Life接口中的sleep()方法和print()方法。

实现类

实现接口用implements关键字,如class Student implements Life, Work{}

一个类实现一个接口必须要实现该接口所有的接口方法。

如下:Student学生类实现了Life和Work接口,需要实现playGame()和makeMoney()方法。学生要工作也要生活~

public class Student implements Life, Work {
    @Override
    public void playGame() {
        System.out.println("学生也要玩游戏");
    }

    @Override
    public void makeMoney() {
        System.out.println("学生也要赚钱");
    }
}

使用接口
public class Demo {
    public static void main(String[] args) {
        Student a = new Student();
        a.makeMoney();
        a.playGame();
        a.sleep();

        Life life = new Student();
        life.playGame();
        life.sleep();

        Work work = new Student();
        work.makeMoney();
    }
}
  • 可以用接口引用接收实现类对象,如Life life = new Student();,因为Student实现了Life接口。
  • 用接口调用方式时,如life.playGame();编译器在执行的时候可以准确的找到具体对象的方法并执行(后期绑定/动态绑定)。

类关系图

如下是类关系图,可以看到实现类两个箭头指向两个接口,说明Student类实现了Work和Life接口。


结语

关注微信公众号:小虎哥的技术博客

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1028030.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号