大家好,我想在main函数中定义一个public变量,系统报错说“Illegal modifier for parameter chatRoom, only final is permitted”,如果把public去掉,编译成功。可是就算去掉public,我的变量也不是final啊,因为我之后还改了它。为什么系统说它必须是final呢?
public放在类定义中修饰方法或者field,再一个场合就是修饰class
不能放在method中.
系统的意思是说,如果你在main函数里的变量前要加修饰符的话,就只能加final,这样的话,你这个变量就是final的
但如果你变量前什么也不加的话,那这个变量就是一个普通的变量,并非final的
不只是main方法里,在任何方法里定义变量都不能声明public,
public是声明做用域的,而方法内部定义的变量只能在方法内部使用(做参数传出不算),在这里声明作用域无意义,也就禁止声明
only final is permitted
译:仅仅final是允许的
意思是在方法内部声明变量只能在需要的时候用final修饰,除此之外不能用其它修饰符修饰,包括static,也会报同样的错误