本文目的为对Java中方法的使用做解析与总结。
方法的概念:方法是一个代码片段,将某个特定功能的实现代码封装成为一个方法,由此实现代码的模块化。
方法的优点:
1.能够模块化的组织代码
2.能够使一份代码在多个位置被重复使用
3.使某功能的实现变简单
方法定义:
修饰符 返回值类型 方法名(参数列表){
方法体代码;
[return 返回值;]
}
调用方法时传参应注意:
1.参数的个数必须匹配
2.参数的类型必须匹配
3.参数的顺序必须匹配
方法名称使用小驼峰命名法(即若为单个单词首字母小写,若为多个单词组合时第一个单词首字母小写,其他单词首字母大写)。
方法不能嵌套定义,也没有方法声明这一说。
程序工作时栈区的情况:
public static int add(int a, int b){
System.out.println("add使用");
return a+b;
}
public static void main(String[] args){
int a=10,b=20;
in ret=add(a,b);
System.out.println(ret);
}//前提,方法与main都在类中定义使用
执行此代码,程序未开始运行时,栈区是空的。程序开始时加载main方法,在栈区最底层为main方法开辟空间并存入main中的局部变量等成分如这时的“a”“b”,之后main调用了函数add,会在栈区中main之上为函数add开辟空间,此空间中有实参的拷贝等其他东西,add运行完之后占用的空间被释放,同理main运行完之后空间也会被清理,栈区回到空的状态。
形参与实参的关系:
形参只是方法在定义时需要借助的一个变量,该变量用来保存在方法被调用时传入的值。
形参是在栈区中方法模块中的 main模块中的实参的一份临时拷贝。对形参的操作不影响实参。
若要用方法对实参的数据进行操作则需要传入引用数据类型实参。
方法重载:
1.多个方法名称相同
2.形参列表不同(类型,个数,类型的顺序)
3.返回类型不影响重载
方法签名:
在同一个作用域中不能定义两个相同名称的标识符。
方法签名即:经过编译器编译修改之后方法最终的名字
每一个方法在底层都是有特定的规则来编号的。
像重载过的方法,虽然方法名相同,但编译器会在编译阶段根据方法签名规则暂时修改这些重载方法的名称以便运行。
方法递归:
1.在该方法的内部再次调用自己。
2.一定要有一个趋近于能让递归终止的条件。
3.有一个”起始条件“,有一个“递推公式”。
举例——求n的阶乘
终止条件为当n为1时返回1,否则返回n*fac(n-1) 这是n阶乘的递推公式; fac(n-1)表示的是n-1的阶乘。
END。