随笔分类 -  JAVA初步认识-第四章

摘要:数组角标越界异常。 空指针异常。(在有数组参与的操作中,要时刻牢记它在内存中的过程。) DOS控制台显示的是[I@c17164,右边是哈西算法得出来的实体的内存编码值,重点要看清@左边的含义,[代表着变量赋值的是数组类型,元素是int。这么做是为了测试变量赋的什么类型的值。 阅读全文
posted @ 2017-09-27 15:10 前锋营 阅读(215) 评论(0) 推荐(0)
摘要:栈内存和堆内存是内存划分中,始终存在的,两者相互配合使用。即使没有定义数组,内存中也会划定一个专门的空间给数组么? 上图在操作到输出语句sop(arr[0])时,栈内存就开始和堆内存构建联系,因为栈内存中的局部变量要用到堆内存数组中的数据。(这里说的不对,在第一句中变量array就已经和数组实体构建 阅读全文
posted @ 2017-09-27 10:52 前锋营 阅读(692) 评论(0) 推荐(0)
摘要:一. 讲解完数组定义后,讨论一下它在内存中的分布问题。这是为了方便理解java在运行过程中,到底是怎么操作的。 只要java程序运行,就会在内存中开辟空间。 jvm空间就是内存为虚拟机划分出来的空间,jvm内部又划分了诸多小空间,每一个小空间的内部数据的处理方式都不同。从这里引出来两个问题,内存划分 阅读全文
posted @ 2017-09-27 10:15 前锋营 阅读(347) 评论(0) 推荐(0)
摘要:注解:数组的概念是同一种类型数据的集合,是一个容器。对比变量,一样是数据集合,一样是容器,只是集合大小为1,容器比较小。对于来到数组中的元素,数组还自动进行了编号,如果不编号的话,无法对每一个元素进行操作,也没法区分。这里谈到数组的书写格式,怎么写计算机才能识别出来,这是计算机语言的语法之一。延伸出 阅读全文
posted @ 2017-09-26 15:06 前锋营 阅读(301) 评论(0) 推荐(0)
摘要:上面的讲解中说到打印标准乘法表是按输入键就可以输出乘法表,这是为什么? 从函数重载的本质来看,它们的功能还是一样的,稍有不用。为了提高程序的复用性,我们可以修改重载的函数,使它们互相调用。只要是参数个数的问题,一般可以复用,如果是参数类型的问题,就无法复用。 总结:有已经提供的功能直接拿来用,没有的 阅读全文
posted @ 2017-09-26 10:56 前锋营 阅读(235) 评论(0) 推荐(0)
摘要:一. 函数重载 重复载入。 我目前粗浅地理解就是,类中出现了相同名字的函数,虽然它们本质不一样,但是从名字看,我们就认为它们是在栈里面被加载了。 截图中,就是函数重载概念能够成立的前提条件。 下面我们举例来说明一下: 上面的例子,编译和运行都没有问题,设计上有点问题。定义函数的目的是为了封装功能,为 阅读全文
posted @ 2017-09-26 10:23 前锋营 阅读(154) 评论(0) 推荐(0)
摘要:一. 前言 编译和运行的区别在于:编译是在检查语法错误,并不进行程序的运行。 二. 底层运算原理 本节讲述了java程序从定义到执行的整个过程,重点在于计算机内部的操作流程。当java工具执行类文件时,计算机是在内存开辟了一个空间,内部 编译的到的xx.class叫做java运行程序,类文件。jav 阅读全文
posted @ 2017-09-25 18:26 前锋营 阅读(247) 评论(0) 推荐(0)
摘要:一. 在对函数的练习中,将之前所做过的所有小程序都用函数功能化一遍。除了练习了函数的书写,还回顾了一些特定代码的书写。 注解:跳出本例来看,像这种没有返回值的功能是否可以说,没有参数加入。→不对,之前输出矩形符号的例子里就有参数的加入。仔细看一下,打印乘法表属于函数的第二种形式,有输入,无返回值。 阅读全文
posted @ 2017-09-16 21:53 前锋营 阅读(255) 评论(0) 推荐(0)
摘要:一. 加强对函数使用的认识 观察下面截图中的三个需求,可以看出,之前对于功能化的理解还是过于肤浅。方法或函数的核心在于提高复用性,事物重复出现时,我们就将其独立地封装起来,需要时,直接调用。至于这个封装的东西是什么,根本不在乎。 二. 对函数在实际中的应用进行解析 注解:对于本题,两个明确都没搞懂。 阅读全文
posted @ 2017-09-16 21:36 前锋营 阅读(428) 评论(0) 推荐(0)
摘要:一. 这里开始谈论怎么使用方法,怎么定义方法 以后不要再往主函数里面写入许多代码了,主函数只是一个入口。 上面的截图中int sum=a+b; return sum; 这是很标准地函数写法,我觉着刚开始学习的时候,尽可能的书写规范,提高可读性。 这里说了两个东西,一是两个明确,而是代码区间如何实现功 阅读全文
posted @ 2017-09-16 17:45 前锋营 阅读(303) 评论(0) 推荐(0)
摘要:一. 从函数的功能三来看,(无输入,无输出),当很多次输出时,我们将其功能函数化,可以提高代码的复用性。 当一句代码重复使用两次以上时,就要考虑提高复用性。 二. 函数的好处 注解: 函数结果返回调用者,交由调用者处理。这点尤为重要,这是一个规范,不是规则,但是要尽可能的这么做。 重点:封装+复用 阅读全文
posted @ 2017-09-16 17:11 前锋营 阅读(256) 评论(0) 推荐(0)
摘要:为什么会重新书写函数的练习呢?在于自己对于定义功能函数格式的不熟悉,感觉随时会忘。 这里再次做一个书写,并且详细地分析一下每一步背后的意思。 class FunctionDemo { public static void main(String[] args) // 这里定义的功能函数是最常见的三种 阅读全文
posted @ 2017-09-15 21:49 前锋营 阅读(231) 评论(0) 推荐(0)
摘要:一. 函数的特殊情况 通常定义完函数后,函数都会有结果。 有常见的两种情况,输入数据,得出结果。没有输入,也得到结果(这算是常见?)。最特殊的在于,有输入,没有结果。 那么,没有结果的情况该怎么表示。这时,return的后面直接用分号表示。 正常的使用如下面所示: 介绍完特殊情况后,问题来了,这种特 阅读全文
posted @ 2017-09-15 20:42 前锋营 阅读(240) 评论(0) 推荐(0)
摘要:函数名在定义时,如果是两个以上的单词构成,第一个单词的首字母是小写,第二个是大写。这和标识符的定义不符。用小括号来确定函数中用到的数据。参数的数目不确定,也可以不定义? return有两个作用,一个是返回值,另一个是结束函数。所以在return 返回值; 后面不要再书写语句,执行不到,会报错。 截图 阅读全文
posted @ 2017-09-15 17:04 前锋营 阅读(212) 评论(0) 推荐(0)
摘要:一. 概述 java基础的另一个组成部分-函数,这个其他语言都有,只是表现形式不一样。用法(功能化)和什么时候用(方便书写)都一样,这是一个通用的概念。 为了便捷操作,设定的一个概念,重点在于直接调用。 二. 函数的定义 函数是定义在类中的,具有特定功能的,一段独立的小程序。但是这段小程序是离不开主 阅读全文
posted @ 2017-09-15 16:18 前锋营 阅读(564) 评论(0) 推荐(0)
摘要:一. 其他的流程控制语句 比较简单,但要注意的是它们有自己的控制范围,离开范围就没用了。就是两个关键字,加上分号,就是一个语句。 break;continue; break意思是跳出,跳出就代表着有自己的范围,有控制范围才会跳出,它的控制范围就两个,switch语句,循环语句。离开这两个使用范围,就 阅读全文
posted @ 2017-09-14 18:53 前锋营 阅读(244) 评论(0) 推荐(0)
摘要:一. 本节的练习是建立在前面练习的基础上的 将输出的*号,改成输出数字,数字在变化。这里的例子又将之前对嵌套循环的思想提升了,之前以为是相同符号才是嵌套,现在明白了格式决定了嵌套。→非也,重复出现的是输出操作。 注意:在解答本题时,一上来就咔咔地按之前固有的思维敲代码,思维僵化,犯了经验主义的错误。 阅读全文
posted @ 2017-09-14 14:17 前锋营 阅读(929) 评论(0) 推荐(0)
摘要:一. 语句嵌套 在语句中加入一些其它语句,比如for语句中,加入了if语句。其实就是在原有语句的循环体基础上,对其进行扩展,添加了一些语句。 嵌套的形式有很多种,没有必要刻意地去记录,当需要使用的时候去用即可。这里将讨论一种特殊的嵌套形式。 在for语句的循环体,加入for语句,这样的结构称为for 阅读全文
posted @ 2017-09-14 10:29 前锋营 阅读(5677) 评论(0) 推荐(1)