В попытке уменьшить изменчивость, следует ли использовать
public void setValues(String[] newVals) {
this.vals = ( newVals == null ? null : newVals.clone() );
}
или
public void setValues(String[] newVals) {
this.vals = ( newVals == null ? null : Arrays.copyOf(newVals, newVals.length) );
}