Java方法最详细的讲解(Java基础)

什么是方法?

方法是程序员中最小的执行单元

Java的方法类似于其它语言的函数,用来完成特定功能

方法有什么作用?

重复的代码,具有独立功能的代码可以抽取到方法中

方法的好处

可以提高代码的复用性

可以提高代码的可维护性

方法的格式

//定义方法

public static void 方法名(){

        方法体;

}

 要定义在主方法外面,类的里面

注意:方法名用驼峰命名(一个单词全部小写,多个单词第二个字母首字母大写)

//调用方法

play();

public static void main(String[] args) {
    play();//调用下面的方法
}
//定义方法
public static void play(){
    System.out.println("开局");
    System.out.println("选英雄");
    System.out.println("对线");
    System.out.println("打团");
    System.out.println("击杀");
    System.out.println("买装备");
    System.out.println("刷野怪");
    System.out.println("被团没");
    System.out.println("失败,喷队友");
}

方法的执行过程

看到方法进入方法,执行完毕回到调用处

public static void main(String[] args) {//1,先进主方法
        System.out.println("a");//2,执行主方法里面的语句
        method();//3,看见方法进入方法
        System.out.println("b");//6,再输出打印
    }

    private static void method() {
        System.out.println("c");//4,执行方法里面的语句
        System.out.println("d");//5,执行完之后再返回主方法
    }
//执行后输出acdb

带参数的方法

//定义方法

public static void 方法名(参数1,参数2,,,,){

        方法体;

}

//调用方法

play(变量1,变量2,,);

注意:方法调用时,参数的数量和类型必须与方法定义中小括号里面的变量一一对应,否则程序就会报错

public static void main(String[] args) {
        method(10,20);
    }

    private static void method(int a,int b) {
        int sum = a+b;
        System.out.println(sum);
    }

形参和实参

形参:全称形式参数,是指方法定义中的参数

实参:全称实际参数,方法调用中的参数

public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入你要求的圆的半径");
        int r = sc.nextInt();
        method(r);
    }

    private static void method(int r) {
        double zc = 2*3.14*r*r;
        System.out.println(zc);
    }

带返回值的方法

在调用处要根据方法的结果,去编写另外一段代码

//定义方法

public static 返回值类型 方法名(参数1,参数2,,,,){

        方法体;

        return 返回值;

}

 调用(三个调用格式)

1,直接调用 

方法名(实参)

2,数值调用

整数类型 变量名 = 方法名 (实参)

3,输出调用

System.out.println(实参)

public static void main(String[] args) {
        int sum1= getsum(10,20,30);
        int sum2 = getsum(40,20,10);
        int sum3 = getsum(40,30,10);
        int sum= sum1+sum2+sum3;
        System.out.println(sum);
    }

    private static int getsum(int a,int b,int c) {

        int m = a+b+c;

        return m;
    }

return关键字

方法没有返回值:可以省略不写,如果书写,表示结束方法

方法有返回值:必须要写,表示结束方法和返回结果

public static void main(String[] args) {
        int sum1=test(80,40);
        int sum2=test(50,90);
        int sum3=test(20,20);
        System.out.println(sum1);
        System.out.println(sum2);
        System.out.println(sum3);
    }

    public static int test(int testval,int target){
            if(testval>target)
                return 1;
            else if(testval<target)
                return -1;
            else
                return 0;
    }

方法的重载

在同一个类中,方法名相同,参数不同的方法(个数不同,类型不同,顺序不同不建议)。与返回值无关。

java虚拟机会通过参数的不同来区分同名的方法

public static void main(String[] args) {
        test(10,20);//整数默认是int
    }

    public static void test(int a,int b){
        System.out.println("int");
        System.out.println(a==b);
    }
    public static void test(byte i,byte z){
        System.out.println("byte");
        System.out.println(i==z);
    }
    public static void test(long i,long z){
        System.out.println("long");
        System.out.println(i==z);
    }

注意:

方法不调用就不执行。

方法与方法之间时平级关系,不能相互嵌套定义。

方法的编写顺序和执行顺序无关。

方法的返回值类型为void,表示该方法没有返回值,没有返回值的方法可以省略return语句不写,如果要编写return,后面不能跟具体的数据。

return语句下面,不能编写代码,因为永远执行不到,属于无效的代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值