【Java基础篇】第九章 对象的创建和使用

有时候,不是因为你没有能力,也不是因为你缺少勇气,只是因为你付出的努力还太少,所以,成功便不会走向你。而你所需要做的,就是坚定你的梦想,你的目标,你的未来,然后以不达目的誓不罢休的那股劲,去付出你的努力,成功就会慢慢向你靠近。

导读:本篇文章讲解 【Java基础篇】第九章 对象的创建和使用,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

⭐⭐⭐Java基础篇目录⭐⭐⭐


🍁 第一章 Java开发环境搭建
🍁 第二章 标识符与关键字
🍁 第三章 变量
🍁 第四章 数据类型
🍁 第五章 运算符
🍁 第六章 控制语句
🍁 第七章 方法
🍁 第八章 认识面向对象
🍁 第九章 对象的创建和使用
🍁 第十章 封装
🍁 第十一章 this和static
🍁 第十二章 继承
🍁 第十三章 方法的覆盖和多态
🍁 第十四章 super

在这里插入图片描述

😉

1、创建对象对应的JVM内存

在这里插入图片描述

在这里插入图片描述

  • 凡是通过new运算符创建的对象,都存储在堆内存中。new的作用即在堆内存中开辟中一个空间。
  • 堆内存中存储对象以及对象的实例变量(属性)
  • 对象Student1在堆内存中的地址赋给局部变量s1,像变量s1这种,保存了对象在堆内存中地址的变量即引用

2、成员变量(实例变量)的访问

在这里插入图片描述

实例变量的访问:引用.实例变量名
通过赋值的方式,修改实例变量的值,即引用.实例变量名=values;

3、对象和引用的区分

- 对象是new出来的,在堆内存中保存
- 引用就是个变量,也有他自己的地址。特殊的是这个变量保存了内存地址,且这个地址指向堆内存中的对象

在这里插入图片描述
在这里插入图片描述
小练习:

在这里插入图片描述

//片段
 Address a = new Address();
 a.city = "天津";
 a.code = 123456;
 a.street = "渤海";
 User u = new User();
 //引用数据类型变量的初始化,将Address a的值复制一份给addr,就像int a=1; int b=a;
 u.addr = a;  
 //访问引用数据类型属性内部的属性
 System.out.println(u.addr.city);

在这里插入图片描述

对象的某个实例变量(属性)是引用数据类型,初始化是赋一个引用。

在这里插入图片描述

4、属性是引用类型

在这里插入图片描述

5、空指针异常

经典异常—-NullPointerException

当引用的变量等于null时,即空引用访问对象的属性时发生NullPointerException

在这里插入图片描述

引用置空时,原先引用中存的地址被覆盖为null,不再指向堆内存中的对象。把对象比喻成一个气球,引用就是牵着气球的线,引用置为null,就是这根线断了,此时堆内存中的这个对象只能等GC垃圾回收机制将它回收释放。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

不同于第一个例子中的i,例二中的p虽然也是两个不同的局部变量,但其因值都一样,所以指向的堆内存是同一块,值被改了以后访问到的都是改完以后的值。

6、构造方法

  • 构造方法是一个特殊的方法,通过构造方法,可以实现对象的创建,以及实例变量的初始化。
  • 当一个类中仅有实例变量,没有定义任何构造方法的时候,默认提供一个无参构造方法–称缺省构造器

在这里插入图片描述
😉

- 构造方法的定义:

[修饰符列表]  构造方法名(形参列表){
	 构造方法体;
}

  • 修饰符列表目前写public
  • 构造方法名和类名必须一致
  • 构造方法不需要写返回值类型,void也不用,写了就成普通方法了
  • 通常在构造方法方法体中给属性赋值,完成初始化操作
  • 注意!!!
    当我们自己定义了一个构造方法后,之前默认给的无参构造方法就没了
//之前的创建对象
Student s1 = new Student();

Student()实际是个构造方法。

调用构造方法,通过new运算符来调用。

可以直接new student();编译也无error,但相当于造了一个没栓线的气球,无意义。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
😉
同一个类的多个构造方法之间是重载的关系,调用时根据参数来区分是用哪个构造方法。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/146124.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!