2011/4/4 Robert Novotny <[email protected]>: > Este by som to vylepsil, aby bolo vidiet efekt: > > I. Primitivy hodnotou: > > public static void zlyPokusOZmenuParametra(int i) { > ++i; > } > > int i = 1; > zlyPokusOZmenuParametra(i); > System.out.println("i == " + i); // 1 > > II. Objekty referenciou > > public static void zmenDate(Date d) { > d.setTime(0L); > } > > Date date = new Date(); > System.out.println("date == " + date); // v case mojeho spusteni > ... date == Mon Apr 04 14:15:27 CEST 2011 > zmenDate(date); > System.out.println("date == " + date); // date == Thu Jan 01 > 01:00:00 CET 1970
jj. tento příklad je výstižnější ... (návratový typ je zbytečně matoucí ;-)) Jinak ještě doplním, že findbugs hlásí chybu, když např. entita má getter pro parametr, u kterého můžeme přepsat hodnotu bez toho abychom volali setter... http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP např. (píšu z hlavy - určitě někde budu mít překlep ;)) public class NejakaEntita implements Serializable { private Date createdAt; public Date getCreatedAt() { return createdAt; } } Fafi
