在Person类中,定义构造函数,
然后在main函数中new的是带2个参数的构造函数“
Person p=new Person("Jcson!",21);”
public Person(String name,int a)//我把age改为a。
{
this.setName(name);
this.setAge(age);
}
public void setName(String name)//设置姓名方法。
{
this.name=name;
}
public void setAge(int age)//设置年龄方法。
{
if (age>0 && age<150)
{
this.age=age;
}else
System.out.print("Error age! ");
}
//我把构造函数中传的age改为a,为什么传不了?我觉得应该没有问题的,谢谢
{
this.setName(name);
this.setAge(age);
}这里有错
this.setAge(age);中的实参也应该改为a
如果是构造函数也想穿参数的话,就需要类型匹配才可以。
this.setAge(21);在这里,实际参数替代了原来的形参的位置,去调用方法。形参出现在定义方法中,实参出现在调用方法中。两者不同。打个比方:形参只是一个带有类型的占位符,在调用方法的时候,实际参数会取代他的位置。