当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:17:00  来源:本站整理

传送句柄[Java编程]

赞助商链接



  本文“传送句柄[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

将句柄传送进入一个办法时,指向的仍旧是相同的对象.一个简单的实行可以证明这一点(若履行这个程序时有麻烦,请参考第3章3.1.2小节“赋值”):

//: PassHandles.java
// Passing handles around
package c12;

public class PassHandles {
  static void f(PassHandles h) {
    System.out.println("h inside f(): " + h);
  }
  public static void main(String[] args) {
    PassHandles p = new PassHandles();
    System.out.println("p inside main(): " + p);
    f(p);
  }
} ///:~
toString办法会在打印语句里自动调用,而PassHandles直接从Object担当,没有toString的重新定义.因此,这里会采取toString的Object版本,打印出对象的类,接着是那个对象所在的位置(不是句柄,而是对象的实际存储位置).输出后果以下:
p inside main(): PassHandles@1653748
h inside f() : PassHandles@1653748
可以看到,无论p还是h引用的都是同一个对象.这比复制一个新的PassHandles对象有效多了,使我们能将一个参数发给一个办法.但这样做也带来了另一个重要的问题.
  以上是“传送句柄[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 传送句柄
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .