【发布时间】:2011-10-18 13:03:59
【问题描述】:
在 Vb.net 中,我们有一个称为“模块”的东西,它提供了一个全局范围,模块中的静态函数在整个项目中可见。 p>
Java 中有这样的功能吗? (即添加可用于多个包/文件/类的静态方法而无需import .* )
好的,我知道这是一个会引起很多争论的功能,但这个帖子的真正意义不是就这个功能进行争论。
【问题讨论】:
-
没有这样的东西。 Java IDE 会自动添加导入并在编辑器中隐藏/折叠它们,所以我们不介意它们:-)
-
好吧,你不必导入 java.lang 包(字符串包含在这个包中,你永远不必导入字符串)......但我不知道有什么方法可以创建一个无需导入即可使用的新“模块”。
-
@Asaf 我们如何在
java.lang包中编写一个类? -
@Pacerier 你不能,它是 java 的一部分。如果你能找到破解它的方法,我强烈建议不要这样做。当您实际部署应用程序时,您会遇到大量问题。另外需要澄清的是,String 中的任何方法或 java.lang 中的任何其他类都不能在不引用 String 的情况下访问,例如 String.replace。你不能随时去 replace() 。它所做的就是自动导入 java.lang.*。
-
恕我直言,如果这个问题提到了使 VB 模块特别方便的原因(存在名称冲突的风险),这个问题会更有用:导入 VB 模块可以在不附加类的情况下引用公共函数姓名。所以不仅仅是这些函数是可见的(公共的),它们实际上是在全局名称空间中(一旦它们被导入)。
标签: java vb.net function module import