3.29

对象的创建和使用

public class Aa{

}

public class AaTest{

​ …main(){

​ Aa aa=new Aa();

}

}

必须使用new关键字用来创建对象,接着使用构造器对对象进行初始化,在堆内存中开辟一块空间并分配地址例0x001,接着把地址赋值给引用aa

new Aa()匿名对象只可使用一次

ps:java中对象是由引用对其操作的

内存分析

栈:

​ 每个线程私有,线程间不共享

​ 局部变量放置栈中

​ 栈是系统自动分配,速度快,是一个连续的内存空间

堆:

​ 放置new出来的对象

​ 堆是一个不连续的空间,分配灵活,速度慢

方法区:

​ 被所有线程共享

​ 存放程序中永不变的内容

构造器(构造方法,constructor)

构造器用于构造该类实例(对象初始化信息)是一种特殊的方法

[修饰符] 类名(形参){

}

构造器方法名为类名,不能定义返回类型和void,只能或者不使用return;,如果没手动定义构造器那么系统会自动定义一个无参的构造器,有手动定义则系统不会再自动生成

this关键字

指代当前对象(new对象)

public class Aa{

​ public int a;

​ public int b;

​ public Aa(int a){

​ this.a=a;

​ }

​ public Aa(int a,int b){

​ this(a);

​ this.a=a;

​ }

}

调用重载构造方法必须写构造方法的第一句

让类中的方法访问该类中另一个方法(this.方法名())或属性(this.属性名)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值