/*
构造函数:
对象一建立,就会调用对应的函数。
构造函数的作用,可以用于给对象进行初始化。(现实生活中的一些事物,一出现就具备的行为)
当一个类中没有定义构造函数时,系统会默认给该类加入一个空参数的构造函数
下面的空参数构造函数是Person(){}
当在类中定义了构造函数的话,系统就不再定义空参数的构造函数。
构造函数和一般函数在写法上有不同
在运行上也有不同
构造函数是在对象一建立就运行,给对象初始化。
而一般函数是对向调用才执行,给对象添加对象具备的功能。
一个对象建立,构造函数只运行一次。
而一般方法可以被该对象调用多次。
*/
class Person
{
{
System.out.println("cry..........");//构造代码块,调用就执行一次。
}
private String name;
private int age;
public void setName (String n)
{
name = n;
}
public String getName ()
{
return name;
}
/* public void setAge (int a)
{
age=a;
}
public int getage()
{
return age;
}
*/
Person()
{
System.out.println("A: name="+name+",,age="+age);
// System.out.println("cry..........");
// cry();
}
Person(String n)
{
name=n;
System.out.println("B: name="+name+",,age="+age);
// System.out.println("cry..........");
// cry();
}
Person(String n,int a)
{
name=n;
age=a;
System.out.println("C: name="+name+",,age="+age);
// System.out.println("cry..........");相同代码使用函数代替。
// cry(); 都调用这个函数也比较重复,使用构造代码块代替。
}
/* public static void cry ()
{
System.out.println("cry...........");
}
*/
}
class gzhs
{
public static void main(String[] args)
{
//Person p = new Person();
//P.cry();一个对象只能cry一次
Person p1 =new Person("赵四");
p1.setName("令狐冲");//一般函数可以执行多次。
p1.setName("jack");
System.out.println(p1.getName());
//Person p2 = new Person("田娃",20);
}
}