因为java的接口中默认的变量都是 public static final的。而方法就都是public的类实现了接口就要实现接口中的所有方法, 如果你不写成public的,而写 成了default或者不写,那么就代表只有包内有效, 就更改接口的的实现规则,也就大大的缩小了接口中方法的使用范围。
因为接口不能实现 必须要有实现类 如果不是公有 那么实现类就看不到了