之间有什么区别
class x {
//code here
}
和
public class x {
//code here
}
有时我会在互联网上看到示例,他们会public class
而不是class
,而且它们都是简单的程序。我使用class
作为我的作业,其他人也是如此
答案 0 :(得分:34)
第一个将导致为您的班级分配默认可见性,即package-private
(即:可在同一package
内访问)。
第二个使它public
,即任何其他类都可见。
答案 1 :(得分:9)
最简单的说法:
如果你拥有的所有东西都在同一个软件包中(每个文件顶部的软件包com.myschool.myapp)那么没有区别,但是如果有什么东西想要访问它的软件包之外的任何东西那么它必须是公共的。
例如,“String”在“java.lang”中,你的包几乎肯定不在java.lang中,所以如果string不公开你就无法访问它。
答案 2 :(得分:5)
对于成员,方法和内部类,还存在以下可见性修饰符:
答案 3 :(得分:0)
第一个是默认类,即它不能在除自身之外的任何其他包中访问,但可以被同一个包中的其他类访问。
第二个使它公开,即你可以从任何类的任何类访问它,就像访问String和Array一样,如果是不同的包。
请记住,我们谈论的是从包而不是类中访问。
关于, 然后:如果我有一个未声明为public的类X(请大写类名),我可以在其中使用公共实例变量(EG public String name;)吗? ;)
是的,您当然可以在非公开类中使用公共实例变量。