Java基础知识(3)

47 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第26天,点击查看活动详情

标准JavaBean类

  • 类名要见名知意
  • 成员变量使用private修饰
  • 提供至少两个构造方法
    • 无参构造方法
    • 带全部参数的构造方法
  • 成员方法
    • 提供每一个成员变量对应的setXxx()/getXxx()
    • 如果还有其他行为,也需要写上

三种情况的对象内存图

一个对象的内存图

Student s = new Student();
  1. 加载class文件
  2. 申明局部变量
  3. 在堆内存中开辟一个空间
  4. 默认初始化
  5. 显示初始化
  6. 构造方法初始化
  7. 将堆内存中的地址值赋值给左边的局部变量

一个对象的内存图

image.png

两个对象的内存图

image.png

两个引用指向一个对象

1 image.png 2 image.png

基本数据类型和引用数据类型

从内存角度去看

基本数据类型

数据值存储在自己的空间中

特点

赋值给其他变量,也是赋的真实的值

image.png

引用数据类型

数据值式存储在其他空间中,自己空间中存储的是地址值

特点

赋值给其他变量,赋的地址值

Student s1 = new Student();
Student s2 = s1;

image.png

this的内存原理

  • 原理:区分局部变量和成员变量
  • 本质:所在方法调用者的地址值

成员变量和局部变量

  • 成员变量:类中方法外的变量(无上下顺序)
  • 局部变量:方法里的变量
  • 二者区别:类中位置不同,初始化值不同,内存位置不同,生命周期不同,作用域不同。

image.png

今天学的很少,好多是了解一下就可以的,但是内存图比较重要,需要记住。