通过下面表格回顾下几种修饰符的可见范围。default我们后面会说。
权限 | 类内 | 同包 | 不同包子类 | 不同包非子类 |
private | √ | × | × | × |
空 | √ | √ | × | × |
protected | √ | √ | √ | × |
public | √ | √ | √ | √ |
default |
1、default 修饰符只能用在接口的方法和属性上,并且不能是静态的。
2、没有修饰符和使用default 修饰符 不能说成一样。没有修饰符能用在各种情况下,而default只能用在接口里面,且必须要实现接口方法。
3、按照jdk1.8的新特性,接口可以有实现方法,但是必须是default或者static修饰的(不能同时default和static)