私人类型.error

时间:2011-01-14 21:37:25

标签: java

谁能告诉我为什么会收到这个错误?

  

非法表达开始<private int confirm;

以及

  

非法表达开始<private File soundFile3 = new File("merge.wav");

如果我删除“private”一词,编译器不会显示任何错误。 代码是公共方法的一部分。 为什么呢?

谢谢。

代码是:

private int confirm;
        confirm = JOptionPane.showConfirmDialog(this,
                "Different sample size....",
                "JOin", JOptionPane.OK_CANCEL_OPTION);
        if (confirm != JOptionPane.OK_OPTION) {
            return;
        }

private File soundFile3 = new File("merge.wav");

3 个答案:

答案 0 :(得分:5)

私有关键字不能在方法内使用。它可以用来声明类字段或方法:

class Foo {
  private int num; //private can be specified here
  public void foo() {
     int s = 1;
     int k = num+s; //no private here
  }
}

答案 1 :(得分:3)

我猜你不能在方法中修改除final之外的访问权限。为方法级变量设置私有修饰符是没有意义的。方法变量在其单独的堆栈中创建,并在范围丢失时销毁。

答案 2 :(得分:1)

您应该仅对类成员使用访问修饰符,而不是局部变量。

局部变量始终只在声明它们的块的范围内可见。因此,如果在方法中声明变量,则该变量仅在该方法中可见。所以,不需要在那里使用private。我的意思是,即使你可以也不需要。