Java面试题大全
interface里可以定义属性吗?

本质上不可以。

如果强行在interface里加一个属性,则该属性自动变成public static。显然,这不算是个属性。


例如,

public interface Listener

{

int number;

}

虽然number没加static,但是编译会自动把它按public static处理。


为什么这样呢?因为接口就是用来定义接口的,在里面加属性没有意义。

另外,静态属性还叫属性吗?不算了。因为属性表示属于,某对象有属性、这个属性就属于这个对象。但静态对象则表示,这个东西是属于大家的!

千问首页   |   返回上一页