为什么我会收到此错误?

Suh*_*pta 3 java function

这是产生错误的片段:

')' expected
';' expected
not a statement
cannot find symbol
symbol : variable ActionEvent
Run Code Online (Sandbox Code Playgroud)

片段:

private void jMenuItem5ActionPerformed(java.awt.event.ActionEvent evt) {
    JFileChooser chooseToAdd = new JFileChooser();
    int option = chooseToAdd.showOpenDialog(this);
    if( option == JFileChooser.APPROVE_OPTION ) {
        nameOfAudioFile = chooseToAdd.getSelectedFile().getAbsolutePath();
        //clonejTree1ValueChanged( TreeSelectionEvent evt );
        tester(java.awt.event.ActionEvent evt);
    }
}

private void tester(java.awt.event.ActionEvent evt) {
    System.out.println("tester");
}
Run Code Online (Sandbox Code Playgroud)

有语法错误吗?

Jon*_*eet 5

这个方法调用是错误的:

tester(java.awt.event.ActionEvent evt);
Run Code Online (Sandbox Code Playgroud)

那是试图声明一个参数,但你需要传递一个参数.我怀疑你想要:

tester(evt);
Run Code Online (Sandbox Code Playgroud)

理解方法声明(使用名称和类型声明参数)和方法调用(为这些参数提供值)之间的区别非常重要.

顺便说一下,假设你对Java很陌生,我建议不要从Swing或任何其他类型的UI开始.我建议你开始编写一些简单的控制台应用程序,让你掌握Java的基本语法,而不必担心用户界面引入的所有复杂性.

  • @Suhail:如果你不是Java的新手,我不太明白为什么你不理解语法错误.这是一个非常简单的陈述,大概是IDE告诉你哪一行错了...... (2认同)