首页 >> 文摘 >> JAVA

Java的clone机制及其重要的可变类与不可变类要义

采集日期:2008-5-4作者:adousen(注:本数据由系统自动采集,内容与BHCODE无关)
  当方法中传递的参数是基本数据类型时,采用的是值传递;当输入参数是对象时,采用的是引用传递。这是“影子克隆(shallow clone)”。如果想要按值传递参数,该类就要实现cloneable接口,并实现clone方法,将“对象名.clone()”做参数传递(deep clone)。      Object 类有 clone() 方法: protected native Object clone() throws CloneNotSupportedException;      该方法是 protected 的,显然是留待被子类 override 的。该方法又是 native 的,必然做了与具体平台相关的底层工作。      事实上,类 Object 的 clone() 方法首先会检查 this.getClass() 是否实现了 Cloneable 接口。 Cloneable 只是一个标志接口而已,用来标志该类是否有克隆功能。 public interface Cloneable { }      如果 this.getClass() 没有实现 Cloneable 接口,
本周推荐
MORE
热点关注
MORE