1.方法的概念
方法(method)是程序中最小的执行单元
- 注意:
 
//调用格式: 方法名();
```javapublic class MethodTest {public static void main(String[] args) {//在main()方法中调用定义好的方法getMax();}//定义一个方法,用于打印两个数字中的较大数,例如getMax()public static void getMax() {//方法中定义两个变量,用于保存两个数字int a = 10;int b = 20;//使用分支语句分两种情况对两个数字的大小关系进行处理if(a > b) {System.out.println(a);} else {System.out.println(b);}}}
2.有参数方法定义和调用
public static void 方法名 (参数) {方法体;}public static void 方法名 (参数1, 参数2, 参数3...) {方法体;}/*调用格式:方法名(参数);方法名(参数1,参数2);*/
public class MethodTest {public static void main(String[] args) {//在main()方法中调用定义好的方法(使用常量)getMax(10,20);//调用方法的时候,人家要几个,你就给几个,人家要什么类型的,你就给什么类型的//getMax(30);//getMax(10.0,20.0);//在main()方法中调用定义好的方法(使用变量)int a = 10;int b = 20;getMax(a, b);}//定义一个方法,用于打印两个数字中的较大数,例如getMax()//为方法定义两个参数,用于接收两个数字public static void getMax(int a, int b) {//使用分支语句分两种情况对两个数字的大小关系进行处理if(a > b) {System.out.println(a);} else {System.out.println(b);}}}
3.有返回值方法定义和调用
public static 数据类型 方法名 ( 参数 ) {return 数据 ;}//调用格式方法名 ( 参数 ) ;数据类型 变量名 = 方法名 ( 参数 ) ;
public class MethodTest {public static void main(String[] args) {//在main()方法中调用定义好的方法并使用变量保存int result = getMax(10,20);System.out.println(result);//在main()方法中调用定义好的方法并直接打印结果System.out.println(getMax(10,20));}//定义一个方法,用于获取两个数字中的较大数public static int getMax(int a, int b) {//使用分支语句分两种情况对两个数字的大小关系进行处理//根据题设分别设置两种情况下对应的返回结果if(a > b) {return a;} else {return b;}}}
4.方法总结
1.方法注意事项
方法不能嵌套定义
public class MethodDemo {public static void main(String[] args) {}public static void methodOne() {public static void methodTwo() {// 这里会引发编译错误!!!}}}
void表示无返回值,可以省略return,也可以单独的书写return,后面不加数据
public class MethodDemo {public static void main(String[] args) {}public static void methodTwo() {//return 100; 编译错误,因为没有具体返回值类型return;//System.out.println(100); return语句后面不能跟数据或代码}}
2.方法的通用格式
public static 返回值类型 方法名(参数) {方法体;return 数据 ;}
解释:
- public static 修饰符,目前先记住这个格式
 返回值类型 方法操作完毕之后返回的数据的数据类型
(如果方法操作完毕,没有数据返回,这里写void,而且方法体中一般不写return)
方法名 调用方法时候使用的标识符
- 参数 由数据类型和变量名组成,多个参数之间用逗号隔开
 - 方法体 完成功能的代码块
 return 如果方法操作完毕,有数据返回,用于把数据返回给调用者
5.方法重载
存在于同一个类中,指一个方法与已经存在的方法名称上相同,但是参数类型、个数、顺序至少有一个不同。
应该注意的是,返回值不同,其它都相同不算是重载。class OverloadingExample {public void show(int x) {System.out.println(x);}public void show(int x, String y) {System.out.println(x + " " + y);}}
public static void main(String[] args) {OverloadingExample example = new OverloadingExample();example.show(1);example.show(1, "2");}
