java的接口中是否可以定义静态方法

java的接口中 可以定义 静态方法

网上查了许多的博客都说的是不可以,我们老师也说得是不可以。但我自己实验了一下,发现居然可以在接口中定义静态方法(static)惊奇(⊙o⊙)?难道是是我的jdk版本比较新的原因,后面的java规则发生了变动?

而且不仅java的接口中可以定义静态方法,抽象类中也可以。但是定义的静态方法在实现或者继承的子类中是不可见的。即在实现接口的类中,无法使用接口中的静态方法


interface fi {
	static void f1() {
		System.out.println("接口中可以定义静态方法");
	};
}

class fi2 implements fi {
	
}
abstract class fi1 {
	static void f1() {
		System.out.println("抽象方法中可以定义静态方法");
	};
}
public class Test1 {
	public static void main(String[] args) {
		Path p1 = Path.of("C:/Users/Maibenben/Desktop/测试/1.txt");
		Path p2 = Paths.get("C:/Users/Maibenben/Desktop/测试/1.txt");
		fi.f1();
		fi1.f1();
	}
}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值