Kac*_*aye 0 java compiler-errors
我认为没有区别,但后来我遇到了这个:
public class Whatever
{
String toString()
{
//stuff
}
}
Run Code Online (Sandbox Code Playgroud)
此代码导致编译器错误:
toString()在Whatever不能覆盖toString()在java.lang.Object; 试图分配较弱的访问权限; 是public
如果我明确键入public String toString()代码编译就好了.
如果不对public方法和字段使用访问说明符,则假定它们处于package低级可见性之下.
这是一个很好的图表,说明了你班级以外的知名度package和public意义:
Modifier Class Package Subclass World
----------------------------------------------------------
public Y Y Y Y
protected Y Y Y N
no modifier Y Y N N <--- This is package level
private Y N N N
Run Code Online (Sandbox Code Playgroud)
Y 表示方法,类或字段可见.
N表示方法,类或字段不可见
| 归档时间: |
|
| 查看次数: |
129 次 |
| 最近记录: |