java  能否根据内存地址获得内存里的数据? 

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【sjcy007】截止到2008-07-10 13:06:06的历史汇总数据(不包括此帖):
    发帖的总数量:0                        发帖的总分数:0                        每贴平均分数:0                        
    回帖的总数量:0                        得分贴总数量:0                        回帖的得分率:0%                       
    结贴的总数量:0                        结贴的总分数:0                        
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:0                        未结的总分数:0                        
    结贴的百分比:---------------------结分的百分比:---------------------
    无满意结贴率:---------------------无满意结分率:---------------------
    如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html
      

  2.   

    JNI可以,直接没戏。那是C/C++的强项。
      

  3.   


    import sun.misc.Unsafe;public class DoUnsafe {
    private static final Unsafe unsafe = Unsafe.getUnsafe(); public static void main(String args[]) throws Exception {
    System.out.println("memory: " + unsafe.getByte(0x1b126c));
    }
    }
    output:
    memory: 0
      

  4.   

    不过这样很无聊,这地址是JVM的,不是物理的刚才google了一下,Object的hashcode()默认也返回jvm的地址
      

  5.   

    就是说java无法直接的读取物理内存中的值了么?
      

  6.   


    对的。JVM对于Java而言就是物理了,Java无法超出JVM的范围。
    除非用JNI去调用c/c++