java中接口的方法为什么必须是public

子类重写父类方法时,方法的访问权限不能小于原访问权限,在接口中,方法的默认权限就是public,所以子类重写后只能是public
1.接口必须要具体类实现才有意义,所以必须是public。
2. 接口中的属性对所有实现类只有一份,所以是static。
3.要使实现类为了向上转型成功,所以必须是final的。
 
  
1、接口是一种约束和规范,是一种更加更高级的抽象类,抽象类的方法必须是公开的,因为要给人继承和使用啊,不用public,别人怎么看得到,所以在接口实现时,定义的方法修饰符必须是public;因此子类在实现接口重写方法时的修饰符必须是public。
2、另外再扩展一下,接口中没有变量(既然是约束和规范,怎么能够定义一个大家都可以改的东西呢?),只能是常量,接口中定义常量默认的修饰符为public static final。

你可能感兴趣的:(Java)