请帮忙看下是否需要加关键字final(是否有必要设置为常量?)

首先请看代码:
public class Class{

//方法1
public void method(final int num){

}

//方法2
public void method( int num){

}

}

问题是,已经确认在方法中,参数num的值不变,那么使用哪个方法更好呢?

附加:
比如setter方法,写成这样的形式
public void setMeothod(int attr){
this.attr = attr
}

public void setMeothod( final int attr){
this.attr = attr
}

哪种方式更好呢?

如果NUM在这个方法中不变,在其他地方会变,那么建议不加final。使用方法2
如果NUM仅用在这个方法,建议用宏定义更好。

那就不需要传参进去,会影响垃圾回收
public void methd(){
int num;
}

首先得清楚那个num参数意义是什么?如果是常量,直接定义为静态的,或者从配置文件中读取。

写不写影响不大,

 //方法1
public void method(final int num){

}

//方法2
public void method( int num){

}