/*
* 构造函数间调用。
* 1.构造函数只能被构造函数调用,不能被一般方法调用。
* 2.构造函数间,通过this关键字
* 3.this代表的是对象,哪个对象调用this所在的函数,this就代表哪个对象。
* this带上参数列表的方式就是可以访问本类中向对应的构造函数
* 比如:this("list"):访问的就是本类中,带有一个字符串参数的构造函数。
* 注意:用于调用构造函数的this语句必须定义的在构造函数的第一行,因为初始化动作要先进行。
* 总结:只要直接被对象调用的方法都持有this引用。(凡是访问了对象中的数据的方法都持有this引用)
*/
class Person2{
private int age;
private String name;
public void setAge(int a)
{
age=a;
}
public int getAge()
{
return age;
}
public void setName(String n)
{
name=n;
}
public String getName()
{
return name;
}
private Person2(String n)
{
name=n;
}
Person2(String n,int a)
{
this(n); // ! 调用本对象,参数为一个字符串的构造函数
age=a;
}
public void show()
{
System.out.println("名字="+name+"\n"+"年龄="+age);
}
}
public class Demo2{
public static void main(String[] agrs)
{
Person2 p = new Person2("jason",12);
p.show();
}
}
* 构造函数间调用。
* 1.构造函数只能被构造函数调用,不能被一般方法调用。
* 2.构造函数间,通过this关键字
* 3.this代表的是对象,哪个对象调用this所在的函数,this就代表哪个对象。
* this带上参数列表的方式就是可以访问本类中向对应的构造函数
* 比如:this("list"):访问的就是本类中,带有一个字符串参数的构造函数。
* 注意:用于调用构造函数的this语句必须定义的在构造函数的第一行,因为初始化动作要先进行。
* 总结:只要直接被对象调用的方法都持有this引用。(凡是访问了对象中的数据的方法都持有this引用)
*/
class Person2{
private int age;
private String name;
public void setAge(int a)
{
age=a;
}
public int getAge()
{
return age;
}
public void setName(String n)
{
name=n;
}
public String getName()
{
return name;
}
private Person2(String n)
{
name=n;
}
Person2(String n,int a)
{
this(n); // ! 调用本对象,参数为一个字符串的构造函数
age=a;
}
public void show()
{
System.out.println("名字="+name+"\n"+"年龄="+age);
}
}
public class Demo2{
public static void main(String[] agrs)
{
Person2 p = new Person2("jason",12);
p.show();
}
}