重要性:😍😍😍😍😍
JAVA基础讲义-04
方法
1.1 java方法概述
在其他语言中被称为函数,在java语言中被称为方法,方法也被称为最小的封装体,能够完成特有的功能代码块。
编写程序的过程中某一段相同的代码重复在很多地方出现重复编写,导致程序编写的代码臃肿难以维护,可以将这段代码提取出来后放到大括号{}中,并起一个名字称为方法名,在需要用到这段代码的地方通过方法名即可调用方法让方法中的代码执行。
1.2 方法定义的格式
修饰符 返回值类型 方法名(参数类型 参数名,参数类型 参数名…){
方法体
}
1.3 方法分类
有参方法
1.方法名的小括号中有参数列表的方法,使用方法的时候,需要传入相关的参数;
2.方法调用需要传递与参数列表中与其匹配的参数个数及参数类型
无参方法
1.方法定义时在括号中没有定义参数列表,在调用该方法时不用传递任何参数
有返回值方法
1.在定义方法的时候,返回值类型可以指定一个方法结束后想要返回的结果类型,可以是基本类型也可以是引用类型,定义了返回值类型的方法需要在方法体后面加上return和返回值,返回值必须和返回值类型匹配。
无返回值方法
1.在方法定义时,没有返回值的方法将方法的返回值类型定义为void关键字,方法体最后无需增加return语句和返回值。
静态方法
1.加上关键字static修饰的方法
1.4 方法格式详解
1 修饰符:修饰用于修饰方法如方法权限等,public static
2.返回值类型:用于限定返回值的数据类型
3.方法名:方法的名字,通过方法名字即可调用方法
4.参数类型:限定调用方法需要传入的参数的数据类型
5.参数名:在方法上定义的变量,用于接收方法需要用到的数据。
形式参数(形参):方法上定义的参数列表;
实际参数(实参):调用方法时传的数据
6.方法体:方法中要完成的功能代码
7.return:结束方法以及返回方法指定类型的值
8.返回值:方法执行后的返回结果返回给调用者,在return关键字后面
1.5 演示
//有返回值方法
public static int a(){
return 10;
}
//无返回值方法
public static void b(int a){
System.out.println(10);
}
public static int b(){
return 1;
}
//有参方法(静态方法)
public static void c(int a,int b){
System.out.println(a+b);
}
//无参方法
public static void d(){
System.out.println(12);
}
注意事项:
1.方法不调用不执行
2.方法与方法是平级关系,不能嵌套定义
3,方法定义的时候参数之间用逗号隔开
4.方法调用的时候小括号中不用在传递数据类型
5.如果方法有明确的返回值,一定要有return带回一个值
1.6 方法案例
public static void main(String[] args) {
System.out.println(a());//输出调用
b();//直接调用
c(10,2);//赋值调用
//有返回值方法
public static int a(){
return 10;
}
//无返回值方法
public static void b(int a){
System.out.println(10);
}
public static int b(){
return 1;
}
//有参方法
public static void c(int a,int b){
System.out.println(a+b);
}
}
1.6.2 方法的调用方式
1.直接调用
2.赋值调用
3.输出调用
1.7 方法重载介绍
1.7.1 方法重载介绍
在同一个类中,允许存在多个同名的方法,只要它们的参数列表不同,就会发生重载,与返回值类型无关;
参数列表: 参数个数和参数类型
1.7.2 代码实现
public static void main(String[] args) {
System.out.println(sum(2, 5));
System.out.println(sum(2, 3.0));
public static double sum(int a, int b) {
return a + b;
}
//方法重载(参数列表的参数类型和参数个数有关)
public static double sum(int a, double b) {
return a + b;
}
//会报错吗? 会,当调用方法sum(2,1.5)时,程序不知道是执行哪个方法,是要返回值还是不要返回值,重载一定要参数列表的个数或者类型不相同
public static void sum(int a, double b) {
}
//不会报错
public static void sum(int a, double b, int c) {
}