Java创建对象很简单,创建类,然后直接调用构造方法,就可以创建该类的对象。
创建对象分几个阶段完成:
- 首先,内存被分配给所有类的成员对象。
- 然后初始化基类(毕竟,只有有了父类,子类才能继承父类,就像得先有了你爸,才能有你。)。
- 所有变量被赋值(如果变量已经有了定值)。
- 最后,调用构造方法。
举个例子:
class Pet
{
int x = 5, y = 5;
int weight = 10;
Pet(int x, int y)
{
this.x = x;
this.y = y;
}
}
class Cat extends Pet
{
int tailLength = 8;
int age;
Cat(int x, int y, int age)
{
super(x, y);
this.age = age;
}
}
它实际运行过程是:
class Pet extends Object
{
//1. 首先分配内存,内存被分配给了所有类的成员变量
int x;
int y;
int weight;
//2. 初始化基类
Pet(int x, int y)
{
//调用基类的构造方法
super();
//初始化变量
this.x = 5;
this.y = 5;
weight = 10;
//执行构造方法里的代码
this.x = x;
this.y = y;
}
}
class Cat extends Pet
{
//分配内存
int tailLength;
int age;
Cat(int x, int y, int age)
{
//调用基类的构造方法
super();
//初始化变量
this.tailLength = 8;
//age 没有定值,因此不进行赋值
//执行构造方法里的代码
this.age = age
}
}