小编Joc*_*hen的帖子

如何在粘贴代码时阻止Eclipse自动导入包?

我经常从现有的代码库中复制并粘贴代码.Eclipse经常引入我不需要的错误导入语句

例如,我将代码复制并粘贴到我的项目包中,命名com.myproject.utilities为一个名为的文件twitter_class.java

并在它添加的java文件中

import com.pigmal.android.ex.twitter4j.TwitterConstants;

这会导致错误The import cannot be resolved.当然它不能成为原因,为什么它甚至在我甚至没有选择复制时尝试导入该部分

我可以想象这里方便的地方,但这对我来说永远不方便,经常修理很费时间.

如何在Eclipse中使用Eclipse关闭此功能.

java eclipse ide

17
推荐指数
1
解决办法
7542
查看次数

是否允许Java编译器对静态调用具有流敏感性?

以下是JLS第8.4.8.2节的简要示例.

class Super {
    static String greeting() { return "Goodnight"; }
    String name() { return "Richard"; }
}
class Sub extends Super {
    static String greeting() { return "Hello"; }
    String name() { return "Dick"; }
}
class Test {
    public static void main(String[] args) {
        Super s = new Sub();
        System.out.println(s.greeting() + ", " + s.name());
    }
}
Run Code Online (Sandbox Code Playgroud)

根据该例子的讨论,跑步的输出main()将是"晚安,迪克".这是因为静态方法是根据调用它们的变量/表达式的静态类型调用的.

这是我的问题:任何即使是中等流量敏感的编译器都可以确定s在调用时存储的任何对象的类型必须始终如此Sub,因此如果允许编译器使用该信息,即使调用静态方法也可能有一些动态绑定的感觉.为什么不允许这样做?Java是否有明确的目标,即每个编译器生成的行为完全相同的字节码还是有其他原因?

java jls

5
推荐指数
1
解决办法
122
查看次数

标签 统计

java ×2

eclipse ×1

ide ×1

jls ×1