我有一个简单的问题:
在Java编译器中,可以将哪种类型的方法或变量定义为标识符(ID)或关键字(保留字)?

对于以下示例,ID应该是:addmainabcTest1print怎么样?print是ID还是关键字?

例:

public class Test1 {
    public static int add(int a, int b) {
        return a + b;
    }
    public static void main() {
        int c;
        int a = 5;
        c = add(a, 10);
        if (c > 10)
            print("c = " + -c);
        else
            print(c);
        print("Hello World");
    }
}

最佳答案

标识符是程序员用来命名变量,方法,类或标签的单词。

        // Test1 is a class name identifier
        public class Test1 {
                public static int add(int a, int b) { // add is identifier for a method
                      return a + b;
                 }

                public static void main() {
                    int c; // c is identifier for a variable
                    int a = 5;
                    c = add(a, 10);
                    if (c > 10)
                         print("c = " + -c);
                    else
                        print(c);
                    print("Hello World");
                 }
        }


您在Java程序中cannot use任何Keywords as identifiers

您上面的程序中的print不是Keyword,您可以将print用作identifier

使用print作为标识符后,您的代码如下所示。

//Test1 is a class name identifier
public class Test1 {
    // add is identifier for a method
    public static int add(int a, int b) {
    return a + b;
}

public static void main(String[] args) {
    int c; // c is identifier for a variable
    int a = 5;
    c = add(a, 10);
    if (c > 10)
        print("c = " + -c); // c is a String
    else
        print(c); // c is a int
    print("Hello World"); // Hello World is a String
}

/**
 * Method Overriding
 */
private static void print(int c) {
    System.out.println("In Integer Print Method "+c);
}

private static void print(String string) {
    System.out.println("In String Print Method "+string);
}

}


另请参阅:


Check Legal Identifiers in java @Peter Lawrey
List of Keywords and Reserved Words in java

08-24 19:31
查看更多