java都能写什么_Java9的Interface中都能写些什么?

来cnblogs的第一天,来水一篇文章吧。

今天再了解java9新特性的时候,突然发现之前好像只在接口里定义抽象方法,其他东西没常识过。

虽然知道java8对接口增强了两个东西:

接口静态方法

接口默认方法

今天得知java9又增强了一个“接口私有方法”,因此我经过尝试发现接口都能写如下东西。

public interface aaa {

// 能写的四种方法

// 只要不是default或者private 都默认public。其中static、private static函数不能被继承,但default、static main和可以被继承。

// 什么修饰符都不加,是阿里定义接口的规范形式。而不是默认方法。必须被子类实现。

void commit();

// 接口静态方法 jdk8 不能被继承

static void aaa() {

bbb();

}

// 接口默认方法 jdk8 能被继承

default void deFault(){

}

// 接口私有方法 jdk9 不能被继承

private static void bbb(){

System.out.println("nb!");

}

// 接口main函数 能被继承

static void main(String[] args) {

System.out.println(a);

aaa();

}

//能定义变量,但默认 public static final且必须初始化,能被继承。

int a=1;

String b="b";

//能写方法,默认 public static,能被继承

class bbb {

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值