方法
方法就是完成特定功能的代码块,为了解决代码重复编写的问题,可以将重复的代码提取出来放在一个{}中,并为这段代码起个名字。这样每次在调用该功能时,只需通过这个名字来调用代码就可以了。上述过程中,所提取出来的代码可以被看做是程序中定义的一个方法。函数在Java中被称为方法。
格式:
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2,...){
函数体;
return 返回值;
}
详细解释:
修饰符:public static
返回值类型:就是功能结果的数据类型
方法名:符合命名规则即可
实际参数:就是实际参与运算的
形式参数:就是方法定义上的,用于接收实际参数的
参数类型:就是参数的数据类型
方法体语句:就是完成功能的代码
return:结束方法
返回值:就是功能的结果,由return带给调用者。
函数-方法 Method Function
修饰符 返回值类型 函数名(参数列表){
函数体;
return 返回值;
}
修饰符:主要修饰该函数的使用权限和该函数的类型
权限 public protected 默认 private
类型 static native synchronized .......
当目前为止推荐使用 public static
返回值:函数的运行结果(可有 也可无)
返回值类型:就是函数的运行结果的数据类型(有该是啥就是啥 无void)
函数名:对该独立小功能的命名
参数列表:参数类型 参数1,参数类型 参数2...
主要用于接收调用者传来的数据
如果函数没有返回值 返回值类型void 最后一个return可以不写 但不代表不存在!
函数的重载:在同一个类中 出现的重名函数
如何区分重载:参数类型的排列组合
个数和顺序 与参数名没有任何关系
函数的递归调用:函数自己调用自己(栈溢出) 要注意何时结束
函数的运行时基于栈的:函数运行要进栈 函数结束要出栈
方法重载概述:
- 在用一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可,函数重载的前提是函数重名。
重载的区别:
- 要么个数不同。
- 要么个数相同 类型组合不同
方法重载特点:
- 与返回值无关,只看方法名和参数列表。
- 在调用时,虚拟机通过参数列表的不同来区分同名方法。
举例说明以下代码的执行顺序:
class MethodDemo
{
public static void main(String[] args)
{
int sum = getSum(3,4);
System.out.println("sum="+sum);
}
//定义功能求和
public static int getSum(int a , int b)
{
return a + b;
}
}
执行过程:
首先会加载main方法加载进栈内存中,并执行main方法中的代码,分别给a变量开辟空间并存放3,给b变量开辟空间存放4。当程序执行到int sum = getSum(a,b);时,会将getSum函数加载进栈内存中,同样在getSum所属的栈区域中开辟a和b变量空间,接受main方法中的getSum(a,b);传递的值。然后执行getSum函数中的代码,当getSum函数执行结束后,函数会出栈(弹栈)。程序回到main方法的调用语句int sum = getSum(a,b);处,并将getSum方法执行完返回的结果赋值给sum变量,程序继续往下执行,打印sum的值。
数组概念:
- 数组是存储同一种数据类型多个元素的集合。
- 数组既可以存储基本数据类型,也可以存储引用数据类型
数组的定义格式:
数组是存放多个数据的容器,Java中需要使用new关键字来创建容器,在创建容器时也要明确容器的大小,即容器中存放数据个数。
- 元素类型[] 数组名 = new 元素类型[元素个数或数组长度];