如何重命名java类型? (字符串到字符串)

时间:2012-07-12 00:28:28

标签: java string types reference rename

我真的习惯使用" string"而不是" String"在C#中。我想知道如何才能在Java中做到这一点。

如果重要的话,我正在使用Eclipse的Java EE IDE。

5 个答案:

答案 0 :(得分:4)

别。只需使用String。你会习惯的。

答案 1 :(得分:4)

这是不可能的:

  • Java不允许您重命名或别名类型。每个(类)类型只有一个FQN(即完全限定名称)。任何具有不同FQN的类型都是不同的类型。

  • String类型声明为final,因此您甚至无法创建便利子类。 (即使它确实如此,也无济于事,因为你不能改变其余的系统库来使用你的课程。)

  • 在理论上可行的情况下更改系统库是一个真正糟糕的想法,因为它会破坏与阳光下所有东西的兼容性,从Java工具链和IDE开始。

  • 由于此类,生成的代码与JVM内部之间存在交叉依赖关系,因此更改String的名称将特别困难。特别是,这个类和JVM引导程序之间存在一些非常可怕的关系。

  • 即使在技术上可行,但从代码可维护性的角度来看,它仍然是一个坏主意。想想下一个必须阅读和修改你的杂物“Java看起来像C#”代码库的人。

  

我真的习惯在C#中使用“string”而不是“String”。

您只需要学习使用String ...就像数百万其他已经学习过Java的C#程序员一样。

答案 2 :(得分:2)

String是Java中的包装器正确的第一类,并且在Java中没有原始数据类型的字符串,这与C#不同。

Java中的编码约定规定类需要以大写字母开头。所以,不,你不能重命名它。

答案 3 :(得分:1)

即使这不是一个坏主意,我也不认为这是可能的。 java中没有typedef,因此你不能为一个类别名。另外String是一个final类,因此无法扩展 - 这意味着你不能扩展String并将其称为字符串。

答案 4 :(得分:0)

仅适用于lulz

public final class string {
    private final String string;
    public string(String string){
        this.string = string;
    }
    @Override
    public String toString(){
        return string;
    }

    //usage
    public static void main(String args[]){
       string myString = new string("Hello World");
       System.out.println(myString);
    }
}