??xml version="1.0" encoding="utf-8" standalone="yes"?>日本高清中文字幕二区在线,一二三区精品视频,在线亚洲高清视频http://www.aygfsteel.com/hhcto/category/18267.htmlzh-cnTue, 27 Feb 2007 16:11:11 GMTTue, 27 Feb 2007 16:11:11 GMT60EditPlus~译Java(转蝲)http://www.aygfsteel.com/hhcto/archive/2006/12/10/86725.htmlhhctohhctoSun, 10 Dec 2006 10:00:00 GMThttp://www.aygfsteel.com/hhcto/archive/2006/12/10/86725.htmlhttp://www.aygfsteel.com/hhcto/comments/86725.htmlhttp://www.aygfsteel.com/hhcto/archive/2006/12/10/86725.html#Feedback0http://www.aygfsteel.com/hhcto/comments/commentRss/86725.htmlhttp://www.aygfsteel.com/hhcto/services/trackbacks/86725.html其实EditPlus不但有编辑程序的功能Q还有灵zȝ~译功能Q下面就单介l一下EditPlus对JAVA的编译设|?br />实现对JAVA的编?br />在配|EditPlus之前Q我们先要将JAVA的运行环境安装ƈ且调试好Q这里我׃再说明了?br />首先Q从菜单“工PToolsQ?“配|用户工?..”进入用户工兯|?br />在类别里展开“工具”树形菜?“用户工具”,选择“组和工具项目”中的“Group 1”,点击面板双的“组名称...”按钮,文本Group1”修Ҏ“编译JAVAE序”?br />然后选择修改的组“编译JAVAE序”,点击“添加新工具”按钮,选择E序Q徏立“新建程序”,选中它?br />然后是最重要的步骤(修改属性)Q?br />1.1 d~译功能
“菜单文字”里的内容修改ؓ“JAVAC”;
“命令”选择安装JDK后的BIN目录中的~译E序JAVAC.EXEQ如果JDK 安装路径为“c:\jdk”,那么此\径ؓ“c:\jdk\bin\javac.exe”;
“参数”选择“文件名U”,xCZؓ?(FileName)”;
“初始目录”选择“文件目录”,昄为?(FileDir)”;选择“捕莯出”复选框?br />1.2 d执行功能
“菜单文字”里的内容修改ؓ“JAVA”;
“命令”选择安装JDK后的BIN目录中的~译E序JAVA.EXEQ\径ؓ“c:\jdk\bin\java.exe”;
“参数”选择“文件名Q不含扩展名Q”,xCZؓ?(FileNameNoExt)”;
“初始目录”选择“文件目录”,昄为?(FileDir)”;选择“捕莯出”复选框?br />q样完成了基本的配|工作,下面来试着~写一个JAVAE序来测试一下(如图Q,~译的所有信息都会显C在输出H口中,双击某一行错误信息,EditPlus会自动定位到出错?
转自Q?a >http://www.neeao.com/blog/article.asp?id=2400Q?br />

hhcto 2006-12-10 18:00 发表评论
]]>
关于java克隆http://www.aygfsteel.com/hhcto/archive/2006/12/10/86696.htmlhhctohhctoSun, 10 Dec 2006 07:13:00 GMThttp://www.aygfsteel.com/hhcto/archive/2006/12/10/86696.htmlhttp://www.aygfsteel.com/hhcto/comments/86696.htmlhttp://www.aygfsteel.com/hhcto/archive/2006/12/10/86696.html#Feedback0http://www.aygfsteel.com/hhcto/comments/commentRss/86696.htmlhttp://www.aygfsteel.com/hhcto/services/trackbacks/86696.html/**
 *默认得克隆方法ؓ克隆只克隆对象得非引用cd(或者非对象型)成员
 *要做深克隆有两种ҎQ?br /> *a.覆写克隆ҎQ引用型成员的克隆方法)q且克隆时掉一ơ引用型成员的克隆方法!
 *b.序列化对象时默认为深克隆
 *
 */
 
 class Friend implements Cloneable {
   int age;
   String name;
  
  public Friend(int age, String name) {
   this.age = age;
   this.name = name; 
  }
  
  public Object clone () throws CloneNotSupportedException {
   return super.clone(); 
  }
   
 }
 
 class Person implements Cloneable  {
   int age;
  /* *
   *String cdҎQ因Z为引用型Q而且他指向的gؓ帔RQ克隆出来的对象改变他的
   *值实际上是改变了克隆出来对象Stringcd成员的指向不会媄响被克隆对象的值及其指?
   *因ؓ引用被克隆了Q我改变的是引用的指向!
  */
   String name;
  
   Friend f;
  
  public Person(int age, String name, Friend f) {
   this.age = age;
   this.name = name;
   this.f = f;
  }
  
  public Object clone () throws CloneNotSupportedException {
   Person p = (Person)super.clone();
   p.f = (Friend)p.f.clone();
   return p; 
  }
  
  public String toString(){
  StringBuffer sb = new StringBuffer();
  return super.toString()+sb.append("age=").append(age).
   append(",name=").append(name).
   append("friend=").append("f.name=").
   append(f.name).append("f.age=").append(f.age).toString();
 }
 }
 
 
 public class Clonetest {
  public static void main(String [] args)  throws CloneNotSupportedException {
   Person p = new Person(4,"haha",new Friend(5,"hehe"));
   Person p1 = (Person)p.clone();
   p1.name = "oop";
   p1.age = 10;
   p1.f.name = "ooad";
   p1.f.age = 56;
   System.out.println (p);
  System.out.println (p1);
  } 
 }



hhcto 2006-12-10 15:13 发表评论
]]>
几个Java问题http://www.aygfsteel.com/hhcto/archive/2006/12/10/86697.htmlhhctohhctoSun, 10 Dec 2006 07:13:00 GMThttp://www.aygfsteel.com/hhcto/archive/2006/12/10/86697.htmlhttp://www.aygfsteel.com/hhcto/comments/86697.htmlhttp://www.aygfsteel.com/hhcto/archive/2006/12/10/86697.html#Feedback0http://www.aygfsteel.com/hhcto/comments/commentRss/86697.htmlhttp://www.aygfsteel.com/hhcto/services/trackbacks/86697.html1.静态方法什么时候初始化Q在main前还是main?br /> 在mainҎ后,静态方法是属于cȝQ只有在调用时才初始化(main例外Qmain的调用是在初始化工作完成后程序进入运行状态时Q,但静态方法在内存中只有一份;

2.构造函Cl承的关p?br />子类的构造函数内会包含一个父cL造函敎ͼ因ؓ在子cL造函数第一行会默认调用父类构造函敎ͼ如果覆写该行则可以自行控制父cL造函数版本;可见得父cL造函数和子类构造函数得关系是“扎쀝不是“覆写”,Q每个)子类构造函数承(包含Q父cL造函数的一个版本,q可以有自己的部分,cMl承Q子cM完全l承父类Ҏq可pqҎQ父cȝ有不能ѝ?/p>

3.接口没有构造函数的原因
1.接口里的Ҏ完全抽象构造函数没有实CQ无意义
2.接口Z实现多承,子类构造函数必调用父cL造函敎ͼ如果接口有构造函数子cM知道调用哪个父类构造函?/p>4.String与StringBuffer

Stringcȝ来表C那些创建后׃会再改变的字W串Q它是immutable的?br />而StringBuffercȝ来表C内容可变的字符Ԍq提供了修改底层字符串的Ҏ?/p>

Q-当我们进行字W拼接时Q请使用StringBufferc而非Stringc,因ؓ前者将比后者快上百倍?/p>

的确Q在E序的太多场合我们都会进行字W串拼接工作Q简单的代码CZ如下Q?/p>

String str="You are nice.";
str+="I love you so much.";


如果用StringBuffercȝ话,代码如下Q?/p>

StringBuffer str= new StringBuffer("You are nice.");
str.append("I love you so much.");


        从表面看来Stringcd用一个加P+Q便完成了字W串的拼接,
而StringBuffercd要调用一个append()ҎQ是否实现v来更z,更单U呢Q其实不Ӟ
让我们了解一下程序运行内部发生了哪些事情Q?/p>

        l编译后E序的bytecodeQ字节码Q展C出了实质:  在用Stringcd象直接拼接时Q?br />JVM会创Z个时的StringBuffercd象,q调用其append()Ҏ完成字符串的拼接Q?br />q是因ؓStringcL不可变的Q拼接操作不得不使用StringBufferc(q且Q-JVM会将"You are nice."?I love you so much."
创徏Z个新的String对象Q?br />之后Q再这个时StringBuffer对象转型Z个StringQ代价不Ԍ可见Q在q一个简单的一ơ拼接过E中Q?br />我们让程序创Z四个对象Q两个待拼接的StringQ一个时StringBufferQ?br />和最后将StringBuffer转型成ؓ的StringQ-它当然不是最初的str了,q个引用的名U没变,但它指向了新的String对象?/p>

        而如果直接用StringBufferc,E序只产生两个对象Q?br />最初的StringBuffer和拼接时的StringQ?I love you so much."Q,
也不再需要创Z时的StringBuffercd象而后q得其转换回String对象?/p>

        可以惌Q当我们的字W串要被循环拼接若干D|Q?br />用Stringcȝ接操作会带来多少额外的系l开销Q生成多无用的临时StringBuffer对象Q?br />q处理多次无谓的强制类型{换哪?br />
5. equals() ?== 
   equals() 比对象|卛_性是否相{?br />   ==比引用,地址
   在编译时期确定的两个字符串对象引用相{(Q=Q?br />   不在~译期确定的两个字符串字W串引用不相{?/p>

hhcto 2006-12-10 15:13 发表评论
]]>
վ֩ģ壺 | | | | ˫| | ½| ƽ| | | ¡| | | ɽ| | | | | ˫| ޳| ԭ| Ӫ| | ̩| | ˱| ̨| | | | Ӽ| | | ̩| | ĩ| | ɽ| İ| ʯ| |