首页 > 其他 > 详细

接口、多态

时间:2020-10-01 10:31:37      阅读:26      评论:0      收藏:0      [点我收藏+]

接口 、多态


接口

概述

  • 接口就是java语言中一种引用类型,接口的内部主要就是封装了方法,包含抽象方法,默认方法和静态方法、私有方法。
  • 接口的定义与定义类的方式相似,使用interface关键字,
  • 接口的使用它不能创建对象,但是可以被实现(implements,类似于被继承)。一个实现接口的类,需要实现接口中所有的抽象方法,创建该类对象,就可以调用方法了,否则它必须是一个抽象类。
// 含有抽象方法
    
//    public abstract void method();
    
    // 含有默认方法和静态方法
    public default void method1(){}
    public static void method2(){}
    //  含有私有方法
    private void method(){}

基本实现

类与接口的关系为实现关系,即类实现接口,

非抽象子类实现接口:

  • 必须重写接口中所有的抽象方法
  • 继承了接口的默认方法,
class 类名  implements 接口名{
    // 重写接口中抽象方法   必须
    // 重写接口中的默认方法   可选
}

定义接口

public interface InterFaceName {
    public abstract void eat();
    public abstract void sleep();


}

// 定义实现类

public class Animal implements InterFaceName {
    @Override
    public void eat(){
        System.out.println("吃东西");
    }
    @Override
    public void sleep(){
        System.out.println("晚上睡");

    }
}

// 定义测试类

public class InterfaceDemo {
    public static void main(String[] args) {
        Animal a =new Animal();
        a.eat();
        a.sleep();
    }
}

静态方法的使用

静态方法与.class文件相关,只能使用接口名调用,不可以通过实现类的类名或者实现类的对象调用,

私有方法的使用

  • 私有方法:只有默认方法可以调用
  • 私有静态方法: 默认方法和静态方法可以调用。

接口的多实现

一个类只能继承一个父类,而对于接口而言,一个类可以实现多个接口的,这叫做接口的多实现,并且一个类能继承一个父类,同时实现多个接口。

class 类名 [extends 父类名] implements 接口1,接口2,。。。{
    // 重写接口中的抽象方法  必须
    // 重写接口中默认方法  不重名的时候可选
    
}

接口中,有多个抽象方法时,实现类必须重写所有抽象方法,如果抽象方法有重名,只需要重写一次。

但是当默认方法有重名时,必须重写一次。

优先级问题

当一个类,既继承一个父类,又实现若干个接口时,父类中的成员方法与接口中的默认方法重名,子类就近选择执行父类的成员方法。

接口、多态

原文:https://www.cnblogs.com/yuanjian-work/p/13757313.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!