Java中未声明的类是公共的吗?
我开始学习java,并在Eclipse中创建了我的第一个hello world函数。我注意到,我的java项目中src文件夹的默认包中的以下两个函数似乎做了相同的事情:Java中未声明的类是公共的吗?,java,Java,我开始学习java,并在Eclipse中创建了我的第一个hello world函数。我注意到,我的java项目中src文件夹的默认包中的以下两个函数似乎做了相同的事情: class HelloWorld { public static void main(String[] args){ System.out.println("Hello World!"); } } 及 两人都成功打印了“你好,世界!”到控制台 我已经读了一些关于不同类类型的书,但是我不确定我将用
class HelloWorld {
public static void main(String[] args){
System.out.println("Hello World!");
}
}
及
两人都成功打印了“你好,世界!”到控制台
我已经读了一些关于不同类类型的书,但是我不确定我将用第一个函数声明什么类型的类。这两种功能有什么区别?java是否将第一种情况下的my hello world类公开?
类
如果不声明自己为公开
则受包保护
,这意味着类
只能在该包中访问
上访问修饰符的非常有用的摘要。更多
示例:
假设您有以下包结构:
com
stackoverflow
pkg1
public Class1
Class2
pkg2
OtherClass
Class2
只能由Class1
使用,但不能由OtherClass
使用,这是关于类可见性的
可以使用修饰语public声明一个类,在这种情况下,该类对任何地方的所有类都可见。如果一个类没有修饰符(默认值,也称为包私有),那么它只在它自己的包中可见
它是受保护的类,您不能在
包之外访问该类
如果您没有指定任何受默认保护的内容,我花了大约2秒钟在Google上找到:
在回答您的问题时,默认的修饰符是软件包保护的
,这意味着它只能在软件包内访问,但下次请在发布问题之前做一些研究,因为您需要花费更多的时间来编写需要搜索的问题它们是软件包专用的
com
stackoverflow
pkg1
public Class1
Class2
pkg2
OtherClass