Java创建对象:构造方法调用的顺序

本文探讨了Java中创建对象的过程,包括内存分配、基类初始化、变量赋值以及构造方法的调用顺序。通过实例详细阐述了这一系列步骤,帮助理解Java对象的生成机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java创建对象很简单,创建类,然后直接调用构造方法,就可以创建该类的对象。
创建对象分几个阶段完成:

  1. 首先,内存被分配给所有类的成员对象。
  2. 然后初始化基类(毕竟,只有有了父类,子类才能继承父类,就像得先有了你爸,才能有你。)。
  3. 所有变量被赋值(如果变量已经有了定值)。
  4. 最后,调用构造方法。

举个例子:

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
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值