java接口interface特点解析与jdk8之后接口中的特殊方法

本文深入解析Java接口的特点,包括构造方法、访问权限、成员变量、成员方法、多重继承及从JDK8开始引入的默认方法和静态方法。通过具体代码示例,展示接口在实际编程中的应用。

Java接口特点:

  • 没有构造方法;

  • 和外部类一样,interface的访问权限只能是public和默认(什么都不写)

  • 接口中所有成员变量,只能是常量,强制默认添加修饰符(即使你不写也会强制加上): public static final

  • 接口中所有成员方法,强制默认添加修饰符(即使你不写也会强制加上)(除了jdk8以后的default和static修饰的方法): public abstract

  • 多重继承:

  1. 接口与接口之间可以多重继承
  2. 一个类可以在继承或不继承其他类的前提下,同时继承多个接口
    (类对接口的继承一般称之为实现)

从jdk8开始,接口中可以有这两种特殊的方法(特殊在可以有方法体):

  1. 默认方法
  2. 静态方法

这两种方法的强制规定 默认访问权限 都是 public
接口中定义的静态方法,只能在定义该静态方法的接口中直接调用(别处调用时只能通过 接口名.静态方法名 间接调用)
一个例子:

public class Test1 {
    public static void main(String[] args) {
        A b=new B();
        b.first();
        b.second();
        A.third();
    }
}
interface A{
    void first();
    default void second(){//可以有参数
        System.out.println("默认方法");
    }
    static void third(){//可以有参数
        System.out.println("静态方法");
    }
}
class B implements A{
    public void first(){
        System.out.println("成员方法");
    }
}

输出结果:

成员方法
默认方法
静态方法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值