JavaµÄÉ±´ºÍdz¿½±´(2)
ÉÏһƪÎÄÕ½²ÊöÁËdz¿½±´ºÍÉ±´µÄº¬Ò壬²¢ÇÒ¸ø³öÁËdz¿½±´µÄÒ»¸öÀý×Ó
ÕâÆªÎÄÕÂÔÚÄǸöÀý×ÓµÄʵÏÖÉÏ×÷³öÐ޸ģ¬ÊµÏÖÉ±´,´úÂëÈçÏ£º
package com.test;
public class CloneTest
{
public static void main(String[] args)
{
Student s1 = new Student();
s1.setAge(20);
s1.setName("wudi");
School school = new School();
school.setName("Peiyang University");
school.setBornYear(1895);
s1.setSchool(school);
System.out
.println("s1:" + s1.getName() + " " + s1.getAge() + " "
+ s1.getSchool().getName() + " "
+ s1.getSchool().getBornYear());
try
{
//¿½±´Ò»¸öѧÉú
Student s2 = (Student)s1.clone();
s2.setAge(21);
s2.setName("WUDI");
System.out
.println("s2:" + s2.getName() + " " + s2.getAge() + " "
+ s2.getSchool().getName() + " "
+ s2.getSchool().getBornYear());
System.out.println("after s2 changing some property:");
//ͨ¹ýѧÉús2¸Ä±äÁËËûËùÔÚѧУµÄÃû³ÆºÍ³ÉÁ¢Ê±¼ä
s2.getSchool().setName("Tianjin University");
s2.getSchool().setBornYear(1951);
System.out
.println("s1:" + s1.getName() + " " + s1.getAge() + " "
+ s1.getSchool().getName() + " "
+ s1.getSchool().getBornYear());
System.out
.println("s2:" + s2.getName() + " " + s2.getAge() + " "
+ s2.getSchool().getName() + " "
+ s2.getSchool().getBornYear());
}
catch (CloneNotSupportedException e)
{
e.printStackTrace();
}
}
}
class School implements Cloneable
{
private String name;
private int bornYear;
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public int getBornYear()
{
return bornYear;
}
public void setBornYear(int bornYear)
{
this.bornYear = bornYear;
}
@Override
protected Object clone() throws CloneNotSupportedException
{
return super.clone();
}
}
class Student implements Cloneable
{
private int age;
private String name;
private S
Ïà¹ØÎĵµ£º
1¡¢java»ù´¡£º
JAVA ¿ª·¢»ù´¡ÖªÊ¶ | Eclipse ¿ª·¢»·¾³ | J2SE 5.0 API | J2SE 6.0ÐÂÌØÐÔ | ¶àÏ̼߳¼Êõ | Socket ÍøÂç¼¼Êõ | Regular Expression | Java·´Éä¼¼Êõ | Properties¼¼Êõ | ¸÷ÖÖʵսÉè¼ÆÄ£Ê½FactoryϵÁС¢Singleton¡¢Strategy¡¢ObserverµÈ | Java Debug¼¼Êõ | ÃæÏò¶ÔÏóÉè¼ÆÔÔòÏê½â | ʵÀý½â¾öÃæÏò¶ÔÏóÉè¼Æ ......
1¡¢JavaSEµÄѧϰÊé¼®
Ó¢ÎÄÃû£º¡¶Thinking in Java¡·
ÖÐÎÄÃû£º¡¶Java±à³Ì˼Ïë¡·
ͼ Ƭ£º
×÷ ÕߣºBruce Eckel
³ö°æÉ磺»úе¹¤Òµ³ö°æÉç
ÔĶÁ·½·¨£ºÕâ±¾Êé²¢²»ÊʺÏÒ»µã»ù´¡¶¼Ã»ÓеÄͬѧ½øÐÐÔĶÁ£¬Ç¿ÁÒ½¨ÒéѧµÄJavaSE¡£
È»ºó¿ÉÒÔÖ±½ÓѧϰJavaWEBµÄÄÚÈÝÁË£¬µ«ÊÇÈç¹ûÏ뱸һ±¾ÊéÔÚÊֱ߱¸²éµÄ ......
1.¶¨Ò壺 ¹ËÃû˼Òå¾ÍÊÇÔÚÀàÖж¨ÒåµÄÀ࣬·ÖΪÁ½À࣬static µÄ ºÍ non-static µÄ¡£ÄÚ²¿Ààʵ¼ÊÉÏÊÇÒ»¸ö±àÒëÆ÷µÄÏÖÏó¡£±àÒëÆ÷½«ÄÚ²¿Ààת»¯Îª´ø×ÅÒ»Ð©Ææ¹ÖÃû×ֵįÕͨÀàÎļþ£¬ÐéÄâ»ú²¢²»Çø·ÖÒ»°ãÀàºÍÄÚ²¿ÀàµÄÀàÖеÄÎļþ¡£ 2.ʹÓÃÄÚ²¿ÀàµÄµÚÒ»¸öºÃ´¦——·â×°ÐԺͶà¼Ì³Ð ÎÒÃǽøÐС°µÚÈýÖÖ¹ØÏµ¡±·ÖÎö£º ¼Ì³Ð½á¹¹ÖÐÎ ......
Java SE=Java Standard Edition
Java EE=Java Enterprise Edition
Java ME=Java Mobile Edition
SEÖ÷ÒªÓÃÓÚ×ÀÃæ³ÌÐò,¿ØÖÆÌ¨¿ª·¢(JFC)
EEÆóÒµ¼¶¿ª·¢(JSP,EJB)
MEǶÈëʽ¿ª·¢(ÊÖ»ú,С¼Òµç)
Ŀǰ£¬Java 2ƽ̨ÓÐ3¸ö°æ±¾£¬ËüÃÇÊÇÊÊÓÃÓÚСÐÍÉ豸ºÍÖÇÄÜ¿¨µÄJa ......
Ö÷ÒªÊǾٸöÀý×Ó˵Ã÷Ò»ÏÂʲôÓÃthrows£¬Ê²Ã´Ê±ºòÓÃtry-catch¡£
import java.io.BufferedReader;
import java.io.File;
import java.io.FileFilter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
public class Test {
public static void main(String[] ......