大数据笔记2019.5.9 Java中方法的使用
方法:
1.方法的概念:(函数/过程)
封装了一段特定的业务逻辑功能
尽可能的独立,一个方法只让干一件事;
方法可以被反复的重新的调用
减少代码的重复,有利于代码的维护,减少团队开发的成本提高开发的效率
2.方法的语法规范:
修饰词 返回值类型 方法名(参数列表){
方法体;(业务逻辑功能的具体体现)
}
3.多个参数
修饰词 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…){
方法体;(业务逻辑功能的集体实现)
return 返回值;
}
//如果无返回值类型,就没有return返回值;
解释:
-
修饰词:public static
-
返回值类型:用于限定返回值的数据类型
-
方法名:方便调用方法的名字
-
参数类型:限定调用方法的时候,传入数据的变量;
-
参数名:接收代用方法的时候,传入数据的变量
-
方法体:业务逻辑功能的具体实现
-
return:结束方法,把返回值传回给调用者
5.方法的调用:
1、单独调用,没有意义
2、输出调用,有意义,不够好
3、赋值调用,推荐方式
6.Java 中无参无返回值方法的使用
1、定义方法
例如:下面代码定义了一个方法名为 show ,没有参数,且没有返回值的方法,执行的操作为输出 “ welcome to imooc. ”
-
注意:
1)方法体放在一对大括号中,实现特定的操作
2)方法名主要在调用这个方法时使用,需要注意命名的规范,一般采用第一个单词首字母小写,其它单词首字母大写的形式
2、调用方法
当需要调用方法执行某个操作时,可以先创建类的对象(即new需要调用的方法所在的类),然后通过 对象名.方法名();
例如我们创建了一个名为 test 的对象,然后通过调用该对象的 show( ) 方法输出信息:
public class HelloWorld {
public void show() {
System.out.println(“Hello World”);
}
public static void main(String[] args){
HelloWorld test=new HelloWorld();
test.show();
}
}
7.Java 中无参带返回值方法的使用
1、例如:下面的代码,定义了一个方法名为 calcSum ,无参数,但返回值为 int 类型的方法,执行的操作为计算两数之和,并返回结果
在 calSum( ) 方法中,返回值类型为 int 类型,因此在方法体中必须使用 return 返回一个整数值。
2、调用带返回值的方法时需要注意,由于方法执行后会返回一个结果,因此在调用带返回值方法时一般都会接收其返回值并进行处理。如:
注意:
1、 如果方法的返回类型为 void ,则方法中不能使用 return 返回值!
2、 方法的返回值最多只能有一个,不能返回多个值
3、 方法返回值的类型必须兼容,例如,如果返回值类型为 int ,则不能返回 String 型值
8. Java 中带参无返回值方法的使用
1、我们可以通过在方法中加入参数列表接收外部传入的数据信息,参数可以是任意的基本类型数据或引用类型数据。
我们先来看一个带参数,但没有返回值的方法:
上面的代码定义了一个 show 方法,带有一个参数 name ,实现输出欢迎消息。
2、调用带参方法与调用无参方法的语法类似,但在调用时必须传入实际的参数值
运行结果为: 欢迎您,爱慕课!
很多时候,我们把定义方法时的参数称为形参,目的是用来定义方法需要传入的参数的个数和类型;把调用方法时的参数称为实参,是传递给方法真正被处理的值。
注意:
1、 调用带参方法时,必须保证实参的数量、类型、顺序与形参一一对应
3、 方法的参数可以是基本数据类型,如 int、double 等,也可以是引用数据类型,如 String、数组等
9.Java 中带参带返回值方法的使用
如果方法既包含参数,又带有返回值,我们称为带参带返回值的方法。
1、例如:下面的代码,定义了一个 show 方法,带有一个参数 name ,方法执行后返回一个 String 类型的结果
2、调用带参带返回值的方法:
运行结果为: 欢迎您,爱慕课!
Java中方法的重载
如果同一个类中包含了两个或两个以上方法名相同、方法参数的个数、顺序或类型不同的方法,则称为方法的重载,也可称该方法被重载了。如下所示 4 个方法名称都为 show ,但方法的参数有所不同,因此都属于方法的重载:
问: 如何区分调用的是哪个重载方法呢?
答: 当调用被重载的方法时, Java 会根据参数的个数和类型来判断应该调用哪个重载方法,参数完全匹配的方法将被执行。如:
运行结果:
判断方法重载的依据:
1、 必须是在同一个类中
2、 方法名相同
3、 方法参数的个数、顺序或类型不同
4、 与方法的修饰符或返回值没有关系