0

我有两个 java 类(.java 文件)。我希望能够在一个类中创建另一个类中定义的对象的新实例,而无需每次都引用类名。在 C# 中有#using和包含,但我只能import <pre-compiled code>在 java 中使用。有没有办法做到这一点:

import TestClass;

然后只需在其中调用一个函数而不使用

TestClass.TestFunction()

每次?Main我只需要让我的所有函数和对象与我的类分开。

4

2 回答 2

5

假设TestFunction是一个静态方法TestClass,你可以使用静态导入

import static TestClass.TestFunction;
// or
import static TestClass.*;

然后在不使用类限定符的情况下调用它:

TestFunction(...);

请注意,这可能会导致混淆/难以阅读的代码 -谨慎使用静态导入。

于 2013-02-19T04:07:45.493 回答
0

如果您使用的是 netbeans,那么在导入任何 java 类的过程中您不会发现任何问题。是的,这是真的,您只能将“预编译类”作为导入语句。如果您在记事本上运行,则需要先编译独立类,然后编译依赖类。如果您使用 Netbeans 或 Eclipse 或任何其他 IDE,那么您不必担心它们会自行管理,您只需使用正确的包和类名
您可以有两种类型的导入

import package1.Class1;
import static package1.Class2;

使用第一个,您可以创建 Class1 的对象(或任何其他类,如果存在于 Class1 中)并调用方法
使用第二个,您可以直接调用 Class2 的静态方法,而无需使用类名引用它

更新
了 查看JAVA 包的教程

于 2013-02-19T04:10:07.603 回答