public class TestImpl {
public static void main(String[] args) {
HelloImpl h1 = new HelloImpl(), h2 = h1;
h1.message = "holla";
System.out.println(h2.sayHello());
}
}
interface Hello {
String sayHello();
}
class HelloImpl implements Hello {
static String message = "Hello";
String sayHello() {
return message;
}
}
Run Code Online (Sandbox Code Playgroud)
我得"试图分配较弱的特权".
默认情况下,interface所有成员都是public.
您无法实现(或覆盖)方法并分配较弱的权限,因为这不允许多态.
你必须做sayHello() public.
class HelloImpl implements Hello {
private static final String message = "Hello";
public String sayHello() {
return message;
}
}
Run Code Online (Sandbox Code Playgroud)
此外,内部常量应该是 private final
| 归档时间: |
|
| 查看次数: |
823 次 |
| 最近记录: |