java吧 关注:1,231,190贴子:12,693,150
  • 7回复贴,共1

高中学历的搞软件开发的高手应该很多吧

取消只看楼主收藏回复

............................................................................
想建个软件开发与学习交流群, 只招一些高中或者高中以下学历的高手, 不知道靠谱么?


1楼2012-12-23 19:33回复
    看不起做软件的怎么了?


    3楼2012-12-23 20:06
    回复
      好吧, 你帮我深入阐述下volatile 吧。 刚学反射看到的。
      import java.lang.reflect.Field; import java.lang.reflect.Modifier; import static java.lang.System.out; enum Spy { BLACK , WHITE } public class FieldModifierSpy { volatile int share; int instance; class Inner {} public static void main(String... args) { try { Class<?> c = Class.forName(args[0]); int searchMods = 0x0; for (int i = 1; i < args.length; i++) { searchMods |= modifierFromString(args[i]); } Field[] flds = c.getDeclaredFields(); out.format("Fields in Class '%s' containing modifiers: %s%n", c.getName(), Modifier.toString(searchMods)); boolean found = false; for (Field f : flds) { int foundMods = f.getModifiers(); // Require all of the requested modifiers to be present if ((foundMods & searchMods) == searchMods) { out.format("%-8s [ synthetic=%-5b enum_constant=%-5b ]%n", f.getName(), f.isSynthetic(), f.isEnumConstant()); found = true; } } if (!found) { out.format("No matching fields%n"); } // production code should handle this exception more gracefully } catch (ClassNotFoundException x) { x.printStackTrace(); } } private static int modifierFromString(String s) { int m = 0x0; if ("public".equals(s)) m |= Modifier.PUBLIC; else if ("protected".equals(s)) m |= Modifier.PROTECTED; else if ("private".equals(s)) m |= Modifier.PRIVATE; else if ("static".equals(s)) m |= Modifier.STATIC; else if ("final".equals(s)) m |= Modifier.FINAL; else if ("transient".equals(s)) m |= Modifier.TRANSIENT; else if ("volatile".equals(s)) m |= Modifier.VOLATILE; return m; } }


      4楼2012-12-23 20:08
      收起回复
        该贴会带来初步的启发:
        http://www.iteye.com/topic/213794
        volatile的具体使用, 需要在实践中通过多线程测试来验证。


        6楼2012-12-23 20:34
        回复
          本质无非是, 在32bit操作系统上, 读写long或double型变量, 需要2次读写操作, 多线程的情况下, 可能会打断高位和地位读写操作的连续性。[$1]volatile的作用可能是为高位与低位读写加锁而已, 来保证他们读写的连续性


          7楼2012-12-23 20:37
          收起回复
            我悟了, 好了, 目前这种自圆其说的解释已经说服了我。


            8楼2012-12-23 20:39
            收起回复
              从2位同学身上受到了启发, 不错


              9楼2012-12-23 20:41
              回复
                百度了一篇: 浅谈java内存模型


                12楼2012-12-23 20:54
                回复