首先,System.out.print方法说明如下: public void print(String s) 打印字符串。如果参数为 null,则打印字符串 "null"。否则,按照平台的默认字符编码将字符串的字符转换为字节,并完全以 write(int) 方法的方式写入这些字节。 写入的目标就是System.out,就是标准输出流。也就是将字符串转换成字节,并写入到标准输出流。所以楼主提到的为什么输出的不是地址这个取决于System.out.print方法的实现。 其次,JAVA没有指针,虽然内部实现都是对象地址的引用,但是JAVA隐藏了这些细节来保持其简单与安全。
new 就是存储在内存中,内存会给他分配一个位置,但是java暂时还不支持获取内存地址,只能借助工具 所以你是 绝对打印不出来地址的 再说System.out.print(b);打印的是 b这个 对象,应该是设计java语言的那个人就已经规定了,对象默认显示的就是它的值,而不是他的内存位置 hashCode也不是内存地址,也没有方法可以获取到,因为也没有意义啊 也是 挺有意思的,也挺无聊的 楼下 跟上
50,526
社区成员
85,605
社区内容
加载中
试试用AI创作助手写篇文章吧