zoukankan      html  css  js  c++  java
  • Java 8 default 函数

    我们知道在java8之前 ,一个类实现一个接口需要实现接口所有的方法,

    但是这样会导致一个问题,当一个接口有很多的实现类的时候,修改这个接口就变成了一个非常麻烦的事,需要修改这个接口的所有实现类

    不过在java8中这个问题得到了解决,没错就是default函数;

    看一个例子:

     1 interface DefaultInterface {
     2     int operate(int a, int b);
     3 
     4     default int addition(int a, int b) {
     5         return a + b;
     6     }
     7 }
     8 
     9 public class DefaultMethodTest implements DefaultInterface {
    10 
    11     @Override
    12     public int operate(int a, int b) {
    13         return a - b;
    14     }
    15 
    16     public static void main(String[] args) {
    17         DefaultMethodTest defaultMethodTest = new DefaultMethodTest();
    18         System.out.println("5 + 3 = " + defaultMethodTest.addition(5, 3));
    19         System.out.println("5 - 3 = " + defaultMethodTest.operate(5, 3));
    20     }
    21 }

    我们看到 DefaultInterface  接口的addition方法用default进行了修饰,并且有自己的默认实现. 而DefaultMethodTest 实现了 DefaultInterface  接口却不用实现addition方法.

    这样如果我们对一个接口就行修改,而又不想修改已经有的实现类的时候就变得非常有用.

  • 相关阅读:
    vue watch 深度监控
    淘宝后台添加颜色尺码动态sku
    js下载
    vue创建1.0项目
    vue assetsPublicPath
    ajax 请求 get请求成功,post 404 not found
    vuejs npm chromedriver 报错
    webpack 输出多个文件
    移动端 js 实现图片上传 预览
    有用的网址
  • 原文地址:https://www.cnblogs.com/LionheartCGJ/p/8466352.html
Copyright © 2011-2022 走看看