------- android培训、java培训、期待与您交流! ----------
一、函数
a).函数就是定义在类中的具有特定功能的一段独立小程序,函数也成为方法。
b).函数的格式:
修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,...){
执行语句;
return 返回值;
}
特点:当函数运算后,没有具体的返回值时,这这时返回值类型用一个特殊的关键字来标识,该关键字就是void,当函数的返回值类型是void时,函数中的return语句可以省略不写。
return的作用:结束函数,结束功能。
c).如何定义一个函数?
1.既然函数是一个独立的功能,那么该功能的运算结果是什么先明确,其实 就是在明确函数的返回值类型.
2.再明确在定义该功能的过程中是否需要未知的内容参与运算,其实就是在 明确函数的参数列表(参数类型和参数个数).
d).函数的作用
1.用于定义功能。
2.用于封装代码,提高代码的复用性。
注意:函数可以调用函数,不可以定义函数.
e).Main主函数的作用:他是程序的入口,他会被JVM所调用,并且保证程 序的运行。
f).函数的重载
在同一个类中,允许存在一个以上的同名函数,只要它们的参数个数和参数 类型不同即可成为函数的重载.
重载的特点:与返回值得类型无关,只看参数列表。参数类型与顺序有关。
g).什么时候使用重载?
当定义的功能相同,但参与运算的未知内容不同,那么这时就定义一个函数 名称以表示起功能,方便阅读,而通过参数列表的不同来区分多个同名函数.
二、数组
a).数组就是同一种类型数据的集合,其实数组就是一个容器。
b).数组的好处:可以自动给数组中的元素从0开始编号,方便操作元素,数组用于封装数据。
c).数组的格式:
1.元素类型 [] 数组名=new 元素类型 [元素个数或数组长度];
int [] arr=new int[4];
2.元素类型 [] 数组名=new 元素类型[]{元素1,元素2};
int [] arr=new int[]{2,3,4,7};
3.元素类型 [] 数组名={元素1,元素2};
int [] arr={3,5,7,2};
d).数字操作常见的问题
1.数组角标越界异常ArrayIndexofBoundsException
代表操作数组时,访问到了数组中不存在的角标。
2.空指针异常 MullPointerException
当引用没有任何指向值为null的情况,该引用还在用于操作实体。
三、二维数组
格式1.int [] [] arr=new int[3][2];
代表定义了一个名称为arr的二维数组;
二维数组中有3个一维数组;
每一个一维数组有2个元素;
一维数组的名称分别为arr[0];arr[1];arr[2];
给一维数组中的某角标赋值arr[0][某]=值;
格式2.int [] [] arr=new int[3][];
代表定义了一个名称为arr的二维数组;
每一个一维数组都是默认的初始化值null;
可以对这Sanger一维数组分别进行初始化;
Arr[0]=new int[3];
格式3.int [][] arr={{3,4,2},{5,7,3},{4,3,2}}
另外补充:获取数组长度:数组名.length;
四、内存结构
栈内存 堆内存 方法区 本地方法区 寄存器
栈内存:存储的都是局部变量(定义在方法中的变量,定义在方法参数上的 变量,定义在for循环里的变量);只要数据使用完毕,该数据就会被释放。
堆内存:特点1:每一个实体都有内存地址值。
2:堆内存中的实体是用于封装数据的,而堆内存中的实体数据都 有默认初始化值。
3:垃圾回收机制。
补充的知识点:
两个引用在同时操作同一数组时,当一个引用把数组值改变时,那么当令一 个数组取数时,则是变后的值。
两个引用在同时操作同一数组时,当一个引用x=null时,那么也没有垃圾 产生。
------- android培训、java培训、期待与您交流! ----------