Java包如何访问上面文件夹

时间:2015-05-16 19:09:24

标签: java

这是我的目录的样子:

practice(folder)
    GraphTester.java
    graph(folder)
         Digraph.java
         algorithm(folder)
               TopologicalSort.java

我想使用graph.Digraph

中的graph.algorithm.TopologicalSortGraphTester.java

我尝试的是:

package graph;

public class Digraph
{
    ...
}


package graph;
// package graph.algorithm; <-- also doesn't work

public class TopologicalSort
{
    ...
    private Digraph graph; // doesn't work
}

我的问题是,如何在Digraph内使用TopologicalSort.java

====更新===

我尝试了以下操作,但仍无法正常工作

package graph;
//package graph.algorithm; <-- this also didn't work
import graph.Digraph;

public class TopologicalSort
{
    ...
    private Digraph graph;
}

我更新了目录的外观。我的目的是将GraphTester.java用作外部类,而不是将其与包graphgraph.algorithm相关联。但是,似乎将它放在文件夹practice下会导致问题。

3 个答案:

答案 0 :(得分:2)

import practice.graph.Digraph;放在TopologicalSort.java的包裹声明下。

确保TopologicalSort的包声明为package practice.graph.algorithm;,它必须与目录结构匹配。

答案 1 :(得分:2)

package 语句用于创建包。

要使用软件包,您需要使用软件包语句下的 import starement,然后使用您要使用的软件包的名称。

您还可以&#34;导入内联&#34;包,只是一种在没有 import 的情况下使用clases或接口的方法是在你使用它时写出完整的路径。

graph.algorithm.TopologicalSort ts = new graph.algorithm.TopologicalSort();

您可以阅读文档here

答案 2 :(得分:0)

添加import语句。

import practice.graph.Digraph;

import practice.graph.algorithm.TopologicalSort;