一、

有时方法的执行需要依赖于某些条件,换句话说,要想通过方法完成特定的功能,需要为其提供额外的信息才行。例如,现实生活中电饭锅可以实现“煮饭”的功能,但前提是我们必须提供食材,如果我们什么都不提供,那就真是的“巧妇难为无米之炊”了。我们可以通过在方法中加入参数列表接收外部传入的数据信息,参数可以是任意的基本类型数据或引用类型数据。




我们先来看一个带参数,但没有返回值的方法:



java 入参 返回值 java有参有返回值_数据


上面的代码定义了一个 show 方法,带有一个参数 name ,实现输出欢迎消息。




调用带参方法与调用无参方法的语法类似,但在调用时必须传入实际的参数值




 

java 入参 返回值 java有参有返回值_数据_02



例如:



java 入参 返回值 java有参有返回值_方法参数_03



运行结果为: 欢迎您,爱慕课!




很多时候,我们把定义方法时的参数称为形参,目的是用来定义方法需要传入的参数的个数和类型;把调用方法时的参数称为实参,是传递给方法真正被处理的值。




一定不可忽视的问题:




1、 调用带参方法时,必须保证实参的数量、类型、顺序与形参一一对应



java 入参 返回值 java有参有返回值_方法参数_04


2、 调用方法时,实参不需要指定数据类型,如 



java 入参 返回值 java有参有返回值_方法参数_05



3、 方法的参数可以是基本数据类型,如 int、double 等,也可以是引用数据类型,如 String、数组等




java 入参 返回值 java有参有返回值_java 入参 返回值_06




4、 当方法参数有多个时,多个参数间以逗号分隔

java 入参 返回值 java有参有返回值_java 入参 返回值_07


二、

如果方法既包含参数,又带有返回值,我们称为带参带返回值的方法。



例如:下面的代码,定义了一个 show 方法,带有一个参数 name ,方法执行后返回一个 String 类型的结果


java 入参 返回值 java有参有返回值_数据_08



调用带参带返回值的方法:


java 入参 返回值 java有参有返回值_java 入参 返回值_09



运行结果为: 欢迎您,爱慕课!


三、


问: 什么是方法的重载呢?



答: 如果同一个类中包含了两个或两个以上方法名相同、方法参数的个数、顺序或类型不同的方法,则称为方法的重载,也可称该方法被重载了。如下所示 4 个方法名称都为 show ,但方法的参数有所不同,因此都属于方法的重载:



java 入参 返回值 java有参有返回值_java 入参 返回值_10



问: 如何区分调用的是哪个重载方法呢?



答: 当调用被重载的方法时, Java 会根据参数的个数和类型来判断应该调用哪个重载方法,参数完全匹配的方法将被执行。如:


java 入参 返回值 java有参有返回值_java 入参 返回值_11



运行结果:



java 入参 返回值 java有参有返回值_方法名_12



判断方法重载的依据:



1、 必须是在同一个类中



2、 方法名相同



3、 方法参数的个数、顺序或类型不同


4、 与方法的修饰符或返回值没有关系