注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

古城风~~~

竹密无妨溪水过,天高不碍白云飞。这天下总有一份是属于我古城的天地!

 
 
 

日志

 
 

练习题  

2008-07-26 16:41:42|  分类: 学习笔记 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

题目:撰写一个 myString class,其中包含一个String对象,可于构造函数中通过引数来设定初值。加入toString()和concatenate()。后者会将String对象附加于你的内部字符串尾端。请为myString()实现clone()。撰写两个static函数,令它们都接收myString reference  x引数并调用x.concatenate(“test”)。但第二个函数会先调用clone()。请测试这两个函数并展示其不同结果。

方法:

public class MyString implements Cloneable{

 /*撰写一个 myString class,其中包含一个String对象,
  * 可于构造函数中通过引数来设定初值。加入toString()和concatenate()。
  * 后者会将String对象附加于你的内部字符串尾端。
  * 请为myString()实现clone()。
  * 撰写两个static函数,令它们都接收myString reference  x引数并
  * 调用x.concatenate(“test”)。但第二个函数会先调用clone()。
  * 请测试这两个函数并展示其不同结果。
  */
 /*
  “ 撰写两个static函数,令它们都接收myString reference x引数
   并调用x.concatenate(“test”)。但第二个函数会先调用clone()。”
   本人觉得这个意思是:“撰写static函数,主要是因为static是属于类本身而不属于对象的,
   所以可以直接用类带点来访问,从而简化访问同时可以把对象作为参数而传递进去。而本程序
   想通过‘调用clone()’来拷贝,是想证明‘不调用clone()’时是对对象本身操作,而‘调用
   clone()’是对对象的副本操作而不影响对象本身”  
  */
 
 private String str;
 
 MyString(String str){
  this.str=str;
 }
 
 public String toString(){
  return str;
 }
 
 public void concatenate(String old){
  String newStr=new String();
  newStr=this.str+old;
  this.str=newStr;
 }
 
 public Object clone(){
   Object copyStr=null;
   try {
   copyStr=super.clone();
  } catch (CloneNotSupportedException e) {
   e.printStackTrace();
  }
  return copyStr; 
 }
 
 public static void method1(MyString x){
  x.concatenate("test");
  System.out.println(x.toString());
 }
 
 public static void method2(MyString x){
  ((MyString)x.clone()).concatenate("test");
  System.out.println(x.toString());
 }
 
 public static void main(String[] args) {
  MyString myStr1=new MyString("ccp330-gucheng-");
  MyString.method1(myStr1);
  MyString myStr2=new MyString("ccp330-gucheng-");
  MyString.method2(myStr2);
  /*结果为:
  ccp330-gucheng-test
        ccp330-gucheng-
  */

 }

}

  评论这张
 
阅读(427)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017