Java总结——对象内存图解

class Car{
    //类的真正意义就是在描述事物。属性和行为统称为事物中的成员。
    //成员分两种:成员属性(在代码中的体现:成员变量)和成员行为(代码体现:就是方法。)
    String color;
    int number;
    void run(){
        System.out.println(color+"::"+number);
    }   
}
class CarDemo {
    public static void main(String[] args){
        Car c = new Car();           
        //c是类类型的变量,c指向了一个具体的Car类型的对象在堆内的位置。
        c.color = "red";c.number = 4;c.run();
    }
}

运行内存图解:
运行内存图解

小结:

基本数据类型:自定义的变量中自己存储值
应用数据类型:应用类型只需要存储实体的地址

java数据类型

类与对象关系:

类:对事物的描述。需要体现属性和行为。
对象:该类事物创建的实例(实体),通过该对象调用具有的属性和行为。

成员变量和局部变量的区别:

区别一:定义的位置不同。
成员变量定义在类中。
局部变量定义在方法中以及语句里。

区别二:在内存中的位置不同。
成员变量存储在堆内存的对象中。
局部变量存储在栈内存的方法中。

区别三:生命周期不同。
成员变量随着对象的出现而出现,随着对象的消失而消失。
局部变量随着的方法的运行而出现,随着方法的弹栈而消失。

区别四:初始化不同。
成员变量因为在堆内存中,所有默认初始化值。
局部变量没有默认初始化值,必须初始化后才可以使用。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值