方法
什么是方法
-
方法是一种语法结构,它可以把一段代码封装成一个功能,以便重复调用。
-
定义方法时可以指定形参,形参没有实际意义,仅仅起到占位和提示实参种类的作用,名字要有意义。
-
调用方法时可以指定实参,实参由实际意义,是方法运行时事实上使用的数值。
-
return关键字可以用来返回变量或字面量到方法外部,程序一旦执行到return所在行,就会立即结束并跳出该方法的执行,不会再执行之后的代码。
为什么要使用方法
提高代码的复用性,提高开发效率,使程序逻辑更清晰。
方法的完整格式
修饰符 返回值类型 方法名(形参列表) {
方法体代码(需要执行的功能代码);
return 与返回值类型相同的变量或字面量;
}
- 若方法申明了具体的返回值类型,则其内部必须使用return返回对应类型的数据。
- 形参列表可以有多个形参,甚至可以没有。 如果有多个形参,多个形参之间必须用“, ”隔开,且不能给初始化值。
方法的其他格式
无参数方法
没有形参列表的方法。
修饰符 返回值类型 方法名() {
方法体代码(需要执行的功能代码);
return 与返回值类型相同的变量或字面量;
}
- 方法如果不需要接收数据,则不需要定义形参,且调用方法时也不可以传数据给方法了。
无返回值方法
没有返回值的方法。
修饰符 void 方法名(形参列表) {
方法体代码(需要执行的功能代码);
return; //可以单独使用return来结束并跳出方法
}
- 如果方法不需要返回数据,返回值类型必须申明成void(无返回值申明), 此时方法内部不可以使用return返回数据。
无参数且无返回值的方法
既没有形参列表,有没有返回值的方法。
修饰符 void 方法名() {
方法体代码(需要执行的功能代码);
return; //可以单独使用return来结束并跳出方法
}
方法如何执行
方法定义后,必须调用才可以执行,调用格式为:
方法名(实参列表);
- Debug时可以进入方法内部。
方法使用时的常见问题
-
方法在类中的位置放前放后无所谓,但一个方法不能定义在另一个方法里面。
-
方法的返回值类型写void(无返回申明)时,方法内不能使用return返回数据,如果方法的返回值类型写了具体类型,方法内部则必须使用return返回对应类型的数据。
-
return语句的下面,不能编写代码,属于无效的代码,执行不到这儿。
-
方法不调用就不会执行, 调用方法时,传给方法的数据,必须严格匹配方法的参数情况。
-
调用有返回值的方法,有3种方式:
-
1、可以定义变量接收结果:
int a = method();
-
2、或者直接输出调用:
System.out.println(method());
-
3、甚至直接调用;
method();
-
-
调用无返回值的方法,只有1种方式:直接调用:
method();
选择方法的种类
- 若方法不需要接收数据进行处理,则选择无参数方法,否则选择有参数方法。
- 若方法不需要返回数据,则选择无返回值方法,否则选择有返回值方法。
- 按照方法要处理的业务灵活选择。
方法的执行原理
方法被调用的时候,是进入到栈内存中运行的。
栈的特点
-
先进后出。
-
用完即扔
为什么方法要在栈中运行
-
保证一个方法调用完另一个方法后,可以回来。
-
及时回收内存,防止栈内存溢出。
Java的参数传递机制
值传递
-
值传递:在传输实参给方法的形参的时候,传输的是实参变量中存储的值的副本。
-
Java的参数传递机制都是值传递。
基本类型的参数传递
基本类型的参数传输存储的数据值。
引用类型的参数传递
引用类型的参数传输存储的地址值。
方法重载
什么是方法重载
一个类中,出现多个方法的名称相同,但是它们的形参列表是不同的,那么这些方法就称为方法重载了。
方法重载的注意事项
- 一个类中,只要一些方法的名称相同且形参列表不同,那么它们就是方法重载了,其它的都不管(如:修饰符,返回值类型是否一样都无所谓)。
- 形参列表不同指的是:形参的个数、类型、顺序不同,不关心形参的名称。
方法重载的应用场景
开发中我们经常需要为处理一类业务,提供多种解决方案,此时用方法重载来设计是很合适的。
在方法中单独使用return关键字
“return;”可以用在无返回值的方法中,其作用是:立即结束并跳出当前方法的执行。
标签:调用,Java,形参,笔记,return,类型,返回值,第五天,方法 From: https://www.cnblogs.com/zgg1h/p/18051655