大学生java的小问题
public static void main(String [] args)
{
APerson p1 = new APerson("Lisa","Smith","111-11-1111",21,"Lisa@heaven.com");
APerson p2 = new APerson("Jack","Smith","222-11-1111",45,"Jack@heaven.com");
APerson p3 = new APerson("Tom","Cruise","333-11-1111",52,"Tom@heaven.com");
String out ="";
p2.marriedTo(p1);
p2.divorceFrom(p1);
p3.marriedTo(p1);
out+= p1.toString(); // out是string,p1.toString返回的的也是string这个可以理解,p2不应该是pointer吗,应
out+= p2 ; 该是个reference,为什么可以直接和out相加????
out+= p3;
}
//下面是public class APerson的constructor
public APerson(String fN,String lName, String s,int a, String e)
{
fName =fN; this.lName = lName;sSN = s;setAge(a); eMail=e;
date = new Date();
}
public APerson(String fN,String lName, String s)
{
this(fN,lName,s,0," "); // 这句 statement要干嘛,这里函数只有3个parameter,为什么要有0,“ ”。
}
public String toString()
{
return "Created on:"+date+"\n"
+"First Name:"+fName+"\n"
+"Last Name:"+lName+"\n"
+"Social Security:"+sSN +"\n"
+"Email:"+eMail+"\n"
+"Age :"+age+"\n"
+"Marital Status:"+isMarried()+"\n"
+"Spouse First Name: "+( isMarried() ? hw.getFName() : " Available??")+"\n";
}