zoukankan      html  css  js  c++  java
  • java8新特性

    1、接口中的默认方法

    若一个接口中定义了一个默认方法,而另一个父类或者接口中又定义了一个同名的方法时:

    1)选择父类中的方法。如果一个父类提供了默认的具体的实现,那么接口中具有相同名称和参数的默认方法会被忽略

    public class MyClass {
    
        public String getName(){
            return "呵呵呵...";
        }
    }
    
    public interface MyFun {
    
        default String getName(){
            return "hahahahah";
        }
    }
    
    public class MySubClass extends MyClass implements MyFun {
    
        public static void main(String[] args) {
            MySubClass msc = new MySubClass();
            System.out.println(msc.getName());
        }
    }

    执行结果:

    clipboard

    2)接口冲突。如果一个父接口提供一个默认方法,而另一个接口也提供了一个具有相同名称和参数列表的方法(不管这个方法是不是默认方法),那么必须覆盖该方法来解决冲突

    public interface MyFun {
    
        default String getName(){
            return "hahahahah";
        }
    }
    
    public interface MyInterface {
    
        default String getName(){
            return "嘿嘿嘿......";
        }
    }
    
    public class MySubInterface implements MyFun,MyInterface {
        @Override
        public String getName() {
            return MyFun.super.getName();
        }
    }

    2、接口中的静态方法

    java8接口中可以使用静态方法…….

    public class MySubInterface implements MyFun,MyInterface {
        @Override
        public String getName() {
            return MyFun.super.getName();
        }
    
        public static void  show(){
            System.out.println("额 i m hungry!!!");
        }
    
        public static void main(String[] args) {
            MySubInterface.show();
        }
    }

    clipboard

    
    
  • 相关阅读:
    网上搜的逆元知识
    关于树的一点学习【清北学堂】
    矩阵乘法和斐波那契数列【清北学堂】
    Luogu【P1130】红牌(DP)
    Luogu【P1901】发射站(单调栈)
    Oracle_PL/SQL(1) 匿名块
    Oracle_SQL(7) 复杂查询
    Oracle_SQL(6) 单行函数
    Oracle_SQL(5) 连接和子查询
    Oracle_SQL(4) DDL 表和约束
  • 原文地址:https://www.cnblogs.com/houchen/p/14364871.html
Copyright © 2011-2022 走看看