随笔分类 -  Java基础+进阶

摘要:Scanner练习键盘输入两个数字求和 键盘输入三个数字求最大值 搜索 复制 阅读全文
posted @ 2022-06-30 14:45 肥宅快乐水~ 阅读(32) 评论(0) 推荐(0)
摘要:Scanner概述及其API文档的使用 什么是Scanner类 一个可以解析基本类型和字符串的简单文本扫描器。 例如,以下代码使用户能够从 System.in 中读取一个数: System.in 系统输入指的是通过键盘录入数据。 Scanner使用步骤 导包 使用import关键字导包,在类的所有代 阅读全文
posted @ 2022-06-30 14:44 肥宅快乐水~ 阅读(133) 评论(0) 推荐(0)
摘要:定义一个标准的类 JavaBean 是 Java语言编写类的一种标准规范。符合 JavaBean 的类,要求类必须是具体的和公共的,并且具有无 参数的构造方法,提供用来操作成员变量的 set 和 get 方法。 API概述和使用步骤 概述 API(Application Programming In 阅读全文
posted @ 2022-06-30 14:42 肥宅快乐水~ 阅读(38) 评论(0) 推荐(0)
摘要:this关键字的作用 我们发现 setXxx 方法中的形参名字并不符合见名知意的规定,那么如果修改与成员变量名一致,是否就见名知意 了呢? 经过修改和测试,我们发现新的问题,成员变量赋值失败了。也就是说,在修改了 setXxx() 的形参变量名后,方 法并没有给成员变量赋值!这是由于形参变量名与成员 阅读全文
posted @ 2022-06-30 14:40 肥宅快乐水~ 阅读(116) 评论(0) 推荐(0)
摘要:private关键字的作用及使用 private的含义 1. private是一个权限修饰符,代表最小权限。 2. 可以修饰成员变量和成员方法。 3. 被private修饰后的成员变量和成员方法,只在本类中才能访问。 练习使用private关键字定义学生类 private的使用格式 1. 使用 pr 阅读全文
posted @ 2022-06-30 14:37 肥宅快乐水~ 阅读(201) 评论(0) 推荐(0)
摘要:成员变量和局部变量的区别 变量根据定义位置的不同,我们给变量起了不同的名字。 在类中的位置不同 重点 成员变量:类中,方法外 局部变量:方法中或者方法声明上(形式参数) 作用范围不一样 重点 成员变量:类中 局部变量:方法中 初始化值的不同 重点 成员变量:有默认值 局部变量:没有默认值。必须先定义 阅读全文
posted @ 2022-06-30 14:35 肥宅快乐水~ 阅读(29) 评论(0) 推荐(0)
摘要:使用对象类型作为方法的参数 当一个对象作为参数,传递到方法中时,实际上传进去的是对象的地址值 使用对象类型作为方法的返回值 当使用一个对象类型作为返回值时,返回值其实就是对象的地址值。 搜索 复制 阅读全文
posted @ 2022-06-30 14:33 肥宅快乐水~ 阅读(18) 评论(0) 推荐(0)
摘要:两个对象使用同一个方法的内存图 对象调用方法时,根据对象中方法标记(地址值),去类中寻找方法信息。这样哪怕是多个对象,方法信息 只保存一份,节约内存空间。 两个引用指向同一个对象的内存图 引用类型作为参数,传递的是地址值。 搜索 复制 阅读全文
posted @ 2022-06-30 14:28 肥宅快乐水~ 阅读(20) 评论(0) 推荐(0)
摘要:手机类练习 定义手机类: 定义测试类: 一个对象的内存图 一个对象,调用一个方法内存图 通过上图,我们可以理解,在栈内存中运行的方法,遵循"先进后出,后进先出"的原则。变量p指向堆内存中 的空间,寻找方法信息,去执行该方法。 但是,这里依然有问题存在。创建多个对象时,如果每个对象内部都保存一份方法信 阅读全文
posted @ 2022-06-30 14:26 肥宅快乐水~ 阅读(27) 评论(0) 推荐(0)
摘要:类的定义 事物与类的对比 现实世界的一类事物: 属性:事物的状态信息。 行为:事物能够做什么。 Java中用class描述事物也是如此: 成员变量:对应事物的属性 成员方法:对应事物的行为 类的定义格式 定义类:就是定义类的成员,包括成员变量和成员方法。 成员变量:和以前定义变量几乎是一样的。只不过 阅读全文
posted @ 2022-06-29 21:04 肥宅快乐水~ 阅读(120) 评论(0) 推荐(0)
摘要:面向对象思想的举例 举例 洗衣服: 面向过程:把衣服脱下来-->找一个盆-->放点洗衣粉-->加点水-->浸泡10分钟-->揉一揉-->清洗衣服-->拧干-->晾 起来 面向对象:把衣服脱下来-->打开全自动洗衣机-->扔衣服-->按钮-->晾起来 区别: 面向过程:强调步骤。 面向对象:强调对象, 阅读全文
posted @ 2022-06-29 21:02 肥宅快乐水~ 阅读(105) 评论(0) 推荐(0)
摘要:返回地址 数组作为方法的返回值,返回的是数组的内存地址 面向对象思想的概述 概述 Java语言是一种面向对象的程序设计语言,而面向对象思想是一种程序设计思想,我们在面向对象思想的指引下, 使用Java语言去设计、开发计算机程序。 这里的对象泛指现实中一切事物,每种事物都具备自己的属性和行为。面 向对 阅读全文
posted @ 2022-06-29 21:00 肥宅快乐水~ 阅读(41) 评论(0) 推荐(0)
摘要:数组元素反转 数组的反转: 数组中的元素颠倒顺序,例如原始数组为1,2,3,4,5,反转后的数组为5,4,3,2,1 实现思想:数组最远端的元素互换位置。 实现反转,就需要将数组最远端元素位置交换 定义两个变量,保存数组的最小索引和最大索引 两个索引上的元素交换位置 最小索引++,最大索引--,再次 阅读全文
posted @ 2022-06-29 20:15 肥宅快乐水~ 阅读(45) 评论(0) 推荐(0)
摘要:数组的遍历输出 数组遍历: 就是将数组中的每个元素分别获取出来,就是遍历。遍历也是数组操作中的基石。 是可以将数组中每个元素全部遍历出来,但是如果数组元素非常多,这种写法肯定不行,因此我们需要改 造成循环的写法。数组的索引是 0 到 lenght-1 ,可以作为循环的条件出现。 求出数组中的最值 搜 阅读全文
posted @ 2022-06-29 20:13 肥宅快乐水~ 阅读(63) 评论(0) 推荐(0)
摘要:常见问题-空指针异常 arr = null 这行代码,意味着变量arr将不会在保存数组的内存地址,也就不允许再操作数组了,因此运行的时候 会抛出 NullPointerException 空指针异常。在开发中,数组的越界异常是不能出现的,一旦出现了,就必须要修 改我们编写的代码。 空指针异常在内存图 阅读全文
posted @ 2022-06-29 20:11 肥宅快乐水~ 阅读(52) 评论(0) 推荐(0)
摘要:两个引用指向同一个数组的内存图 常见问题-数组索引越界异常 创建数组,赋值3个元素,数组的索引就是0,1,2,没有3索引,因此我们不能访问数组中不存在的索引,程序运 行后,将会抛出 ArrayIndexOutOfBoundsException 数组越界异常。在开发中,数组的越界异常是不能出现的,一 阅读全文
posted @ 2022-06-29 20:09 肥宅快乐水~ 阅读(17) 评论(0) 推荐(0)
摘要:一个数组的内存图 以上方法执行,输出的结果是[I@5f150435,这个是什么呢?是数组在内存中的地址。new出来的内容,都是在堆 内存中存储的,而方法中的变量arr保存的是数组的地址。 输出arr[0],就会输出arr保存的内存地址中数组中0索引上的元素 两个数组的内存图 搜索 复制 阅读全文
posted @ 2022-06-29 16:01 肥宅快乐水~ 阅读(19) 评论(0) 推荐(0)
摘要:访问数组元素进行赋值 索引访问数组中的元素: 数组名[索引]=数值,为数组中的元素赋值 变量=数组名[索引],获取出数组中的元素 java中的内存划分 为了提高运算效率,就对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据方式和内存管理方式。 JVM的内存划分: 搜索 复制 阅读全文
posted @ 2022-06-29 16:00 肥宅快乐水~ 阅读(19) 评论(0) 推荐(0)
摘要:省略的静态初始化 格式: 举例: 定义存储1,2,3,4,5整数的数组容器 访问数组元素进行获取 索引: 每一个存储到数组的元素,都会自动的拥有一个编号,从0开始,这个自动编号称为数组索引 (index),可以通过数组的索引访问到数组中的元素。 格式: 数组的长度属性: 每个数组都具有长度,而且是固 阅读全文
posted @ 2022-06-29 15:59 肥宅快乐水~ 阅读(21) 评论(0) 推荐(0)
摘要:数组的定义格式动态初始化 格式: 数组定义格式详解: 数组存储的数据类型: 创建的数组容器可以存储什么数据类型。 [] : 表示数组。 数组名字:为定义的数组起个变量名,满足标识符规范,可以使用名字操作数组。 new:关键字,创建数组使用的关键字。 数组存储的数据类型: 创建的数组容器可以存储什么数 阅读全文
posted @ 2022-06-29 15:56 肥宅快乐水~ 阅读(83) 评论(0) 推荐(0)