/*
*学生类,包括学生的基本信息
*/
public class StudentTest
{ public static void main(String[] args)
{
Student tom = new Student("Tom","20020410");
tom.setStudentSex("man");
tom.setStudentAddress("America");
System.out.println(tom.toString());
}
}class Student
{
private String strName = "";//学生姓名
private String strNumber = "";//学号
private String strSex = "";//性别
private String strBirthday = "";//出生年月
private String strSpeciality = "";//专业
private String strAddress = "";//地址 public Student(String name, String number)
{
strName = name;
strNumber = number;
} public String getStudentName()
{
return strName;
} public String getStudentNumber()
{
return strNumber;
} public void setStudentSex(String sex)
{
strSex = sex;
} public String getStudentSex()
{
return strSex;
} public String getStudentBirthday()
{
return strBirthday;
} public void setStudentBirthday(String birthday)
{
strBirthday = birthday;
} public String getStudentSpeciality()
{
return strSpeciality;
} public void setStudentSpeciality(String speciality)
{
strSpeciality = speciality;
} public String getStudentAddress()
{
return strAddress;
} public void setStudentAddress(String address)
{
this.strAddress = address;
}//可以改成tom.strAddress=address吗?简单介绍一哈原理 public String toString()
{
String information = "学生姓名=" + strName + ", 学号=" + strNumber;
if( !strSex.equals("") )
information += ", 性别=" + strSex;
if( !strBirthday.equals(""))
information += ", 出生年月=" + strBirthday;
if( !strSpeciality.equals("") )
information += ", 专业=" + strSpeciality;
if( !strAddress.equals("") )
information += ", 籍贯=" + strAddress; return information;
}
}
如果你再实例化了一个 lucy,怎么办?
这里你直接写strAddress = address;不要this也可以
否则在一个方法中无法完成对实例变量的赋值,只能引用局部变量
this.strAddress = address;
这里,没有必要用这个this。
应该写成strAddress = address;
如果strAddress 这个属性名叫address,那就必须要用this,来区分address到底指的是这个属性,还是传进来的那个参数。
this.address = address;this还有个作用。this(参数列表);
用在构造方法的方法体的第一句(必须是第一句),来调用相应的构造方法。
告诉我你用的JDK 是什么版本,
我带着硬盘去你家 复制一份
哈哈