【名师课堂】Java高级开发

【名师课堂】Java高级开发

Java核心第三部
156课时 |
31736人已学 |
(17 评论)

加入学习
加入学习

接口定义加强

1.追加了普通方法 ,用default修饰

2.可以定义静态方法

[展开全文]
卟祁 · 2017-06-28 · 接口定义加强 0

在子类继承接口之后,如果该接口又继续添加方法,则此接口将无法继续使用

1.使用default 来定义普通方法,需要通过对象调用

package num.com;

interface IMessage{
    public default void Print(){
        System.out.println("Print");
    }
    public void print();
}

class Message implements IMessage{
    public void print(){
        System.out.println("print");
    }
}


public class TestDemo5 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Message ms=new Message();
        ms.print();
        ms.Print();

    }

}

2.使用static来定义静态方法,通过接口名就可以调用

接口的子类依然是多继承的关系,而抽象类却是单继承。

package num.com;

interface IMessage{
    public default void Print(){
        System.out.println("Print");
    }
    public static  IMessage getInstance(){
        return new Message();
    }
    public void print();
}

class Message implements IMessage{
    public void print(){
        System.out.println("Hello");
    }
}


public class TestDemo5 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        IMessage ms=IMessage.getInstance();
        ms.print();
        ms.Print();

    }

}

 

 

 

 

 

 

 

 

 

 

 

 

 

[展开全文]
sky_fengbiubiu · 2017-06-24 · 接口定义加强 0
[展开全文]
郭鹏恩 · 2017-06-21 · 接口定义加强 0

在之前接触到的是1.5~1.7

1.8接口新特性

接口加强

接口在使用的时候缺个方法,

接口只有方法的声明,而没有方法实现。

将接口将无法实现,

 可以使用default来定义普通方法,需要通过对象调用。

可以使用static来定义静态方法,通过类名.进行访问。

接口可以被多实现,继承只能被继承一次。

建议不要用,因为时间一长,许多的支持会出现问题,此操作不属于标准设计,它属于挽救设计。

[展开全文]
yang2bing1105 · 2017-06-12 · 接口定义加强 0

授课教师

阿里云开发者社区全面升级
一站式体验,助力云上开发!
进入新社区

相关课程

查看更多 >

本课程相关云产品