包中没有public相当于独立了吗

如果我一个包中所有的类都不给public修饰符,那是不是这个包中所有的东西都不能被其它包引用,这个包相当于独立了吗?

java文件名必须和public类同名,而你一个包至少需要一个源代码文件,那么总是有一个public的类的

如果一个类里面没有public class,只有class,那么这个类默认是protected修饰,那么只有在同一个包下面的类可以引用这个类,父级包子级包里面的类都无法引用到这个类,也就调用不到类里面方法,实际上这个包相当于独立了
包括类里面定义的属性也是一样的,你的类用public 修饰了,但是你的属性没有加public ,那么也是protected修饰,这个类可以被其他类引用,但是这个属性不能使用(同级包的类除外)
如果有用请给个采纳,谢谢

【以下回答由 GPT 生成】

问题回答:

在Java中,如果一个包中的所有类都没有使用public修饰符,那么这个包中的内容是不能被其他包引用的。因为没有public修饰符,这些类都被认为是包私有的,只能在同一个包中的其他类中访问。

要使一个包中的内容能被其他包引用,需要在包中的至少一个类上使用public修饰符。这样,其他包中的类才能通过导入这个包并使用该类来访问该包中的内容。

如果你希望将一个包中的内容对外公开,可以在包中的某个类上使用public修饰符,或者在需要对外公开的类、方法、字段上使用public修饰符。

以下是一个示例代码,展示了如何使用public修饰符使一个包中的类对外可见:

package com.example.mypackage;

public class MyClass {
    // 类的内容
}

现在,其他包中的类可以通过导入com.example.mypackage来引用并使用MyClass类。

总结起来,如果一个包中的所有类都没有使用public修饰符,那么这个包中的内容是独立的,其他包无法引用。要使包中的内容对外可见,需要在包中的至少一个类上使用public修饰符。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^