函数
- 定义
函数即封装的代码块,具有特定的功能,一般定义在类的内部,完成特定的操作。 - 函数可以返回一个结果,可以为空,可以为一个数,对象等
- 重载
同名不同参的函数即函数的重载,即定义了一堆名字相同的函数,他们返回值类型相同,只有参数不同,包括类型不同,个数不同。
数组
- 定义
数组描述了对象的有序集合,是容器的一种,很容易想成数字的集合,但数组的范畴要比数字结合大得多,数组包含但不限于存储数字,还有字符,对象等。只要是对象都能往里存。 - 数组创建
数组创建包含3个写法,以int为例
//1.动态定义
int[] a = new int[n];
//2.静态定义
int[] a = new int[]{1,2,3,4,5,...};
//3.静态定义-简化
int[] a = {1,2,3,4,5,...};
- 内存结构
数组的创建过程涉及到3个概念:
栈(stack)堆(leap)方法区(method area)
- 栈:程序运行环境和局部变量存储位置,函数在这里运行,函数里的临时变量在这里存放。
- 堆:java中,变量和变量的值是分开存放的,变量并没有存放其对应的值,其值由堆来存,堆为哪些new出来的对象划分空间存放其数据信息。
- 方法区:存放函数的定义语句,即函数体
demo类加载进内存,main方法加载进方法区,main函数进栈,开始执行new int[3],堆内存开辟空间,将地址赋给a,结束。