现在的位置: 首页 > 综合 > 正文

Illegal modifier for parameter *** , only final is permitted”

2013年09月07日 ⁄ 综合 ⁄ 共 518字 ⁄ 字号 评论关闭

大家好,我想在main函数中定义一个public变量,系统报错说“Illegal modifier for parameter chatRoom, only final is permitted”,如果把public去掉,编译成功。可是就算去掉public,我的变量也不是final啊,因为我之后还改了它。为什么系统说它必须是final呢?

public放在类定义中修饰方法或者field,再一个场合就是修饰class
不能放在method中.

only final is permitted
系统的意思是说,如果你在main函数里的变量前要加修饰符的话,就只能加final,这样的话,你这个变量就是final的

但如果你变量前什么也不加的话,那这个变量就是一个普通的变量,并非final的

不只是main方法里,在任何方法里定义变量都不能声明public,

public是声明做用域的,而方法内部定义的变量只能在方法内部使用(做参数传出不算),在这里声明作用域无意义,也就禁止声明

only final is permitted 
译:仅仅final是允许的
意思是在方法内部声明变量只能在需要的时候用final修饰,除此之外不能用其它修饰符修饰,包括static,也会报同样的错误

抱歉!评论已关闭.