Java 变量地址
本贴摘自 http://bbs.langsin.com/redirect.php?tid=9936&goto=lastpost
想打印一个String 变量的地址,请问如何来写?
不是hashcode,就是内存地址,而且要打印出来。
也许比较简单,不过我没写出来。
----------------------------------------------------------------------------------------
使用System.out.println(obj.hashcode())输出的时对象的哈希码,
而非内存地址。在Java中是不可能得到对象真正的内存地址的,因为Java中堆是由JVM管理的不能直接操作。
只能说此时打印出的Hash码表示了该对象在JAVA虚拟机中的内存位置,Java虚拟机会根据该hash码最终在真正的的堆空间中给该对象分配一个地址.
但是该地址 是不能通过java提供的api获取的。
================
System.out.println(str.getClass()+"@"+str.hashCode());
Jdk 中就是这样实现的
相关文档:
方法一:
若使用JBuilder7,步骤如下: 1、首先建立工程,Application。这些就不需要详细说明。 2、选择菜单Wizards下的archive Builder 3、在archive type中选择Application 4、在Name选项中给可执行程序起名,其他选项默认 5、包含进该工程中所有的类和资源 6、含类库中所有的类和资源 7、下面两步默认 8、 ......
Java访问权限一共有四种,他们之间的访问权限比较通过以下一组例子来解释
例子code:ModiferDemo.java
package com.glust.blog.j2se;
public class ModiferDemo{
//四种访问权限的变量(属性)
private int a;
int b;//friendly
protected int c;
public int d;
......
package dtm.tools;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Calendar;
import java.util.Dat ......
String str = "[010101]+[010102]";
String ss = "
System.out.println(ss); // \[010101]
[ 是特殊字符,
需要用反斜杠 \[ 对其进行转义
\\[010101]";
String ssss = "
\\ ......