【发布时间】:2018-11-16 03:17:49
【问题描述】:
import java.util.*;
interface AdvancedArithmetic{
int divisor_sum(int n);
}
class MyCalculator implements AdvancedArithmetic
{
int sum=0;
int divisor_sum(int n) //Why this method should be public?
{
for(int i=1;i<=n;i++)
{
if(n%i==0)
sum=sum+i;
}
return sum;
}
}
为什么类 MyCalculator 中的方法应该是公开的? 它显示一个错误,如
错误:MyCalculator 中的 divisor_sum(int) 无法在 AdvancedArithmetic 中实现 divisor_sum(int) int divisor_sum(int n) ^ 试图分配较弱的访问权限;是公开的 1 个错误
【问题讨论】:
-
接口上的所有方法(Java 9 之前)都是公共的,无论您是否声明它们。
标签: java interface public access-specifier