一. Java的方法
- Java方法是解决某些或者某一类相似问题的有序步骤。
- Java方法位置:类内部或对象中
- Java方法被创建,在内部或者其他位置被调用。
二. 方法的优点
- 程序变得更加简洁,干净。
- 有利于程序的维护,当需要改变一些参数或者输出结果,只需要在方法更改,就会在调用该方法的地方全部更改。
- 提高了代码的运行速度,减少重复的代码片段。
三.方法的定义
命名方式遵循变量的命名方式,当多个单词时,采用驼峰命名法。
修饰符 返回值类型 方法名(参数类型 参数名){
//
// 代码片段
//
// return 返回值;
// }
//示例
public static int getSum(int a){
a = 10;
return a;
}
修饰符:,可以使用访问控制符来保护对类、变量、方法和构造方法的访问。
返回值类型:可以是八大基本数据类型,也可以是数组甚至方法;ps:当返回值类型是void时,方法内部不需要return。
方法名:方法的实际名称,在调用的时候可以用 "方法名()" 来调用该方法。
参数:分为 "参数类型" 和 "参数名"。 参数类型:定义传入参数的数据类型;参数名:可以理解参数的名称(类比于 定义变量 ,只不过是以形参的方式定义)。
代码片段:就是要进行具体语句,成功实现该方法的操作。
ps:参数可以有一个 ,或者多个,当然也可以一个都没有
没有参数:
public static int getSum(){
int sum = 0;
for (int i=0; i<=100; i++){
sum += i;
}
return sum;
}
多个参数:
public static int getSum1(int a,int b){
int sum = 0;
sum = a + b;
return sum;
}
四.方法的调用
方法的调用分为两中,一种是有返回值的,一种是没有返回值的。
有返回值:
通常调用的时候同时定义一个和返回值数据类型相同的变量去接受。
public class sd {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a=10;
int b=10;
int sum = Sum(a,b);
System.out.println(sum);
}
public static int Sum(int a,int b){
int sum = a + b;
return sum;
}
}
运行结果:这四个箭头的位置的数据类型要保持一直。
没有返回值
一般在数据类型的位置上是void ,直接在使用的位置调用 "方法名()"。
public class sd {
public static void main(String[] args) {
Log();
}
public static void Log(){
System.out.println("CSDN 学习使我快乐");
}
}
运行结果 (不需要去接收,直接调用):
五.方法的重载
方法的重载指的是 定义了两个相同的方法名,但是参数的 个数,类型,顺序。(只和参数有关,与有没有返回值,方法类型无关)
public static int getSum1(int a,int b){
//方法1
}
public static int getSum1(int a,String b){
//方法2
}
public static int getSum1(int a,int b,String c){
//方法3
}
public static int getSum1(Sring c,int a,int b){
//方法4
}
- 方法1和方法2:方法的参数的类型不同。
- 方法1和方法3:方法的参数的个数不同。
- 方法3和方法4:方法的参数的顺序不同。
Java编译器会根据传入的参数个数,类型,顺序来调用相应的同名方法;方法重载可以让程序更清晰易读。执行密切相关任务的方法应该使用相同的名字。
六.方法的作用域
public static void name(int a)
{ //2
} //5
从第二行到第五行 就是该方法的作用域。在该方法内部定义的变量成为局部变量,作用范围是从方法的声明开始,一直到它的块结束。
局部变量必须声明才可以使用。
参数实际上就是局部变量,只不过接收外部传给它的值。
同时,可以在同一个方法里面的非嵌套块中重复声明相同的局部变量,但是在嵌套快中不可以两次声明变量。
非嵌套层级:
嵌套层级:
请动动读者大大的小手手 关注一波 小小作者 帮忙涨涨粉丝 ,谢谢啦。