1

我是 Java 初学者。我在 windows 7 操作系统上安装了 JDK1.7.0。我刚刚编写了一个示例 java 文件,该文件没有被编译并引发以下错误。

Sam.java:5: ';' expected
                Sample p = New Sample();
                                            An exception has occurred in the compile
        r (1.7.0-ea). Please file a bug at the Java Developer Connection (http://java.su
        n.com/webapps/bugreport)  after checking the Bug Parade for duplicates. Include
        your program and the following diagnostic in your report.  Thank you.
        java.lang.StringIndexOutOfBoundsException: String index out of range: 26


     at java.lang.String.charAt(String.java:694)
        at com.sun.tools.javac.util.Log.printErrLine(Log.java:251)
        at com.sun.tools.javac.util.Log.writeDiagnostic(Log.java:343)
        at com.sun.tools.javac.util.Log.report(Log.java:315)
        at com.sun.tools.javac.util.AbstractLog.error(AbstractLog.java:96)
        at com.sun.tools.javac.parser.Parser.reportSyntaxError(Parser.java:295)
        at com.sun.tools.javac.parser.Parser.accept(Parser.java:326)
        at com.sun.tools.javac.parser.Parser.blockStatements(Parser.java:1599)
        at com.sun.tools.javac.parser.Parser.block(Parser.java:1500)
        at com.sun.tools.javac.parser.Parser.block(Parser.java:1514)
        at com.sun.tools.javac.parser.Parser.methodDeclaratorRest(Parser.java:25
69)
        at com.sun.tools.javac.parser.Parser.classOrInterfaceBodyDeclaration(Par
ser.java:2518)
        at com.sun.tools.javac.parser.Parser.classOrInterfaceBody(Parser.java:24
45)
        at com.sun.tools.javac.parser.Parser.classDeclaration(Parser.java:2290)
        at com.sun.tools.javac.parser.Parser.classOrInterfaceOrEnumDeclaration(P
arser.java:2228)
        at com.sun.tools.javac.parser.Parser.typeDeclaration(Parser.java:2217)
        at com.sun.tools.javac.parser.Parser.compilationUnit(Parser.java:2163)
        at com.sun.tools.javac.main.JavaCompiler.parse(JavaCompiler.java:530)
        at com.sun.tools.javac.main.JavaCompiler.parse(JavaCompiler.java:571)
        at com.sun.tools.javac.main.JavaCompiler.parseFiles(JavaCompiler.java:82
2)
        at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:748)
        at com.sun.tools.javac.main.Main.compile(Main.java:386)
        at com.sun.tools.javac.main.Main.compile(Main.java:312)
        at com.sun.tools.javac.main.Main.compile(Main.java:303)
        at com.sun.tools.javac.Main.compile(Main.java:82)

        at com.sun.tools.javac.Main.main(Main.java:67)

下面是 Sam.java 文件的代码

class sam
{
    public static void main(String args[])

    {
    Sample p = New Sample();

    p.show();
    p.display();


    }
}

我在谷歌中研究了各种编译器选项,但这没有帮助。我想了解以下错误。1 - Sam.java:5: ';' 预期 2 - 编译器中发生异常 (1.7.0-ea)

4

4 回答 4

4

新关键字具有小写字符:

Sample p = new Sample();
于 2013-10-18T03:55:16.860 回答
4
Sample p = New Sample();

应该:

Sample p = new Sample();

Java 区分大小写。


EG 这在这里编译得很干净:

class Sam // class names should be EachWordUpperCase
{
    public static void main(String args[])
    {
    Sample p = new Sample();

    p.show();
    p.display();
    }
}

class Sample {
    public void show() {}
    public void display() {}
}
于 2013-10-18T03:55:20.300 回答
3

使Sample p = New Sample();_Sample p = new Sample();

new是一个保留关键字,在 java 中用于创建对象,但由于 java 区分大小写new,因此不同于New

还有不同的创建对象的方式点击了解更多

于 2013-10-18T03:55:58.720 回答
2

-

记住一点:

所有java关键字都是小写字符。

-

于 2013-10-18T04:21:27.453 回答