Указание параметра метода как окончательного не означает, что вы сначала думаете, что это означает
private void doSomething(final MyObject myObj){
...
myObj.setSomething("this will change the obj in the calling method too");
...
}
поскольку java передается по значению, он выполняет то, что вы просите, но это не сразу очевидно, если вы не понимаете, как java передает значение ссылки, а не объекта.