Java导入静态错误

时间:2015-06-16 08:47:41

标签: java compilation

我有这个导入来源:

import static   MinecraftDungeonTileTypes.*;

在与类MinecraftDungeonTileTypes

相同的包中的类上

课程来源:

package mod.dungeonworld;

public  class MinecraftDungeonTileTypes {
    public static  int TILE_WALL = 0;
    public static  int TILE_ROAD = 1;
    public static  int TILE_DOOR = 2;
    public static  int TILE_CHEST = 3;
    public static  int TILE_ROOM = 4;
    public static  int TILE_COD = 5;
    public static  int TILE_SPAWNER = 6;
}

我得到的是编译错误:

  

描述资源路径位置类型导入   无法解析MinecraftDungeonTileTypes。

当我在没有静态导入的情况下定期使用类MinecraftDungeonTileTypes的静态成员时,我没有遇到编译错误。是什么造成的?

2 个答案:

答案 0 :(得分:2)

问题来自于我没有写出要导入的类的完整路径。以下是我的解决方案:

import static   mod.dungeonworld.MinecraftDungeonTileTypes.*;

答案 1 :(得分:2)

您不能statically importstatic课程,但您可以静态导入其static字段/属性:

  

为了访问静态成员,有必要使用它们来自的类来限定引用。例如,必须说:

导入单个属性(使用*而不是名称来大量导入)

import static mod.dungeonworld.MinecraftDungeonTileTypes.TILE_WALL;

您将在代码中引用TILE_WALL

或导入课程

import mod.dungeonworld.MinecraftDungeonTileTypes;

您将在代码中引用与MinecraftDungeonTileTypes.TILE_WALL相同的属性。