public class xx{ public int fieldsX = 4;//inputInt 成员变量完全没问题 public static int fieldsX2 = 4;//需要同步 public Factory fieldsF = new Factory();//fieldsF 成员变量完全没问题 public static Factory fieldsF2;//需要同步 static{ fieldsF2 = new Factory(); } public Factory yy(Factory inputFactory,int inputInt){ //inputInt 原始型变量完全没问题, //inputFactory 怎么说呢,传的是引用, //如果改变它(inputFactory)的成员变量 需要同步,否则就不用了 int intLocal = 3;//完全没问题 Factory factoryLocal; if(){ factoryLocal = new Factory(); factoryLocal.mm = 23;//完全没问题 return factoryLocal; } else{ factoryLocal = inputFactory; synchronized(factoryLocal){ factoryLocal.mm = 23;//需要同步 } return factoryLocal; } } }
猜你喜欢
本站原创《复杂软件设计之道:领域驱动设计全面解析与实战》
其他人在看