什么是方法
方法是处理某项特定功能的代码块.
方法可以提高代码的复用性,是一个类中封装的体现
要求
- 方法不调用不执行
- 方法只能定义在类中方法外,方法不能嵌套
格式
有返回值类型的
修饰符 返回值类型 方法名([参数列表]){
处理功能的代码块;
return 返回值;
}
没有返回值类型
修饰符 void 方法名([参数列表]){
处理功能的代码块;
}
- 修饰符:访问权限修饰符,默认public static
- 返回值类型:需要得到方法的运算结果,定义为有返回值类型的方法,结果的数据类型写在这里
可以是基本数据类型 | 引用数据类型 - 方法名:标识符–>标识符的命名规则|规范
使用方法名调用方法 - 参数列表:可以有参数,可以没有参数,可以有多个参数
可以是基本数据类型|引用数据类型
参数相当于一个局部变量的声明–>作用域只在当前定义的方法中有效 - return:
结束方法
带出返回值(返回值返回给方法的调用处)
参数说明
形式参数(形参)
定义方法时()中的参数
实际参数(实参)
调用方法时的()的值
注意事项
实参和形参 个数,数据类型,顺序要一一对应
方法的调用
方法名([参数]);
- 普通调用 :方法名([参数])
- 赋值调用 据类型 变量名=方法名([参数])
- 输出调用:System.out.println(方法名([参数]))
public class Method{
public static void main(String[] args){
//1,普通调用
getPI(); //执行这个方法中的代码
//2.赋值调用
int sum = getSum(3,5);
System.out.println(sum);
//3.输出调用
System.out.println(getSum(3,5));
System.out.println(getSum(3,5));
}
//求两个数的和
//返回值:要 int 参数:需要2个int类型的参数 int a,int b
//又返回值有参数的方法
public static int getSum(int a,int b){
System.out.println("有返回值有参数的方法");
return a+b;
方法的重载
在一个类中,有多个方法,方法名相同,参数列表不同|方法签名不同
方法签名: 方法名+参数列表–>区分方法的唯一
方法的重载是一个类中多态的一种体现
#要求:
方法的重载需要满足以下要求
1.同一个类
2.多个方法的方法名相同
3.参数列表不同
参数个数不同
参数的数据类型不同
不同数据类型的参数顺序不同
注意事项
方法的重载需要注意:
- 方法的重载和修饰符无关
- 方法的重载和有无返回值无关
- 方法的重载和返回值类型无关
- 方法的重载和参数名无关
重载方法的调用
根据不同实参匹配不同方法
public class OverloadDemo{
public static void main(String[] args){
getSum(3.3,5);
}
//求和 2个数的和
public static void getSum(int a,int b){
System.out.println("int a,int b");
System.out.println(a+b);
}
public static void getSum(double a,double b){
System.out.println("double a,double b");
System.out.println(a+b);
}
public static void getSum(double a,int b){
System.out.println("double a,int b");
System.out.println(a+b);
}
public static void getSum(int a,double b){
System.out.println("int a,double b");
System.out.println(a+b);
}
//求和 3个数的和
public static void getSum(int a,int b,int c){
System.out.println("int a,int b,int c");
System.out.println(a+b+c);
}
}