Java在手,世界我有!!!Java基础之方法以及方法的重载

目录

前言

方法的定义

定义方法的格式

方法的分类

代码举例

第一类:无参数无返回值的方法

第二类:有参数有返回值的方法

第三类:如何判别方法需不需要参数?

第四类:如何判别方法需不需要返回值?

方法注意事项

方法的重载

重载代码举例


前言

各种语言都有它自己的特点,同时与其他语言又有很多的共同之处。对任何一门语言的学习,基础很重要。下面小编带大家来学习一下Java当中的方法以及方法的重载。

方法的定义

方法其实就是若干语句的功能集合。举个非常形象的例子:

冰激凌工厂:原材料(水,白砂糖,奶油)

                      产出品:冰激凌

参数(原料):就是进入方法的数据

返回值(产出物):就是从方法中出来的数据

方法就是用进入工厂的原料即参数,得到消费者需要的产品即返回值,其中,方法的参数类型多种多样,可多可少,方法返回值可有可无。

 

定义方法的格式

修饰符 返回值类型 方法名称(参数类型1 参数名称1,参数类型2 参数名称2,...){
    方法体;
    return 返回值;
}

具体解释一下:

修饰符:public static,private...

返回值类型:也就是方法最终产生的数据是什么数据类型

方法名称:方法的名字,和变量一样,采用小驼峰命名(xxxYyyZzz)

参数类型:进入方法的数据是什么类型

参数名称:进入方法的数据对应的变量的名称

ps:如果参数有多个,使用逗号进行分隔

方法体:方法需要做的事情,若干行代码

return:两个作用,第一停止当前方法,第二将后面的返回值还给调用处

返回值:方法执行后最终产生的结果

注意:return后面的返回值,必须和方法名称前面的返回值的类型保持一致。

方法的分类

按照参数来分:分为有参数的方法和无参数的方法

按照返回值来分:分为有返回值的方法和无返回值的方法

代码举例

第一类:无参数无返回值的方法

public class Demo02Method {
    public static void main(String[] args) {
        //方法的调用
        printMethod();
    }
    //定义方法:该方法用来循环打印输出五行*,每行20个
    public  static void printMethod() {
        for (int i = 1; i <= 5; i++) {
            for (int j = 1; j <= 20; j++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

第二类:有参数有返回值的方法

定义一个两个int数字相加的方法 ,其中方法三要素:
返回值类型:int
方法名称:sum
参数列表:int num1,int num2


public class Demo02MethodDefine {
    public static void main(String[] args) {
        int a=1;
        int b=6;
        //调用求和方法
        int sum=sum(a,b);
        System.out.println("ab两数的和为:"+sum);
    }
    //定义方法:该方法用来求两个数之和
    public static int sum(int num1,int num2) {
        int sum=num1+num2;
        return sum;
    }

}

第三类:如何判别方法需不需要参数?

有参数的方法::两个数字相乘,必须知道两个数字是多少,才能进行计算,必须要有参数。
无参数的方法:不需要任何数据,就可以完成任务。例如打印输出固定的10次文本字符串。 

public class Demo02MethodParam {
    public static void main(String[] args) {
        multiply(10,20);
        print();
    }
    //有参数的方法::两个数字相乘,必须知道两个数字是多少,才能进行计算,必须要有参数。
    public static void multiply(int a,int b) {
        int result=a*b;
        System.out.println("结果是:"+result);
    }

    //无参数的方法:不需要任何数据,就可以完成任务。
    //例如打印输出固定的10次文本字符串
    public static void print() {
        for (int i = 0; i < 10; i++) {
            System.out.println("Hello World"+i);
        }
    }
}

第四类:如何判别方法需不需要返回值?

public class Demo02MethodReturn {
    public static void main(String[] args) {
        //调用getSum()方法,接受返回值
        int sum=getSum(10,20);
        System.out.println("返回值为:"+sum);
        //调用无返回值的printResult方法
        printResult(100,200);
    }

    //有返回值:计算两数之和
    public static int getSum(int a,int b){
        int result=a+b;
        return result;
    }

    //无返回值,直接打印输出结果
    public static void printResult(int a,int b){
        int result=a+b;
        System.out.println("结果是:"+result);
    }
}

方法注意事项

方法的重载

定义:多个方法的名称一样,但是参数列表不一样。

方法重载与下列因素相关:

     1.参数个数不同

     2.参数类型不同

     3.参数的多类型顺序不同

方法重载与下列因素无关:

     1.参数名称

     2.与方法的返回值类型无关

重载代码举例

如果我们想要定义一个sum方法,用来求数字之和,但是我们想要实现sum方法既可以求2个int数字之和,也可以求3个int

数字之和,还可以求int+double之和,总之不论几个数据,不论是int和double都用一个sum方法来实现。

public class Demo01MethodOverload {
    public static void main(String[] args) {
        System.out.println(sum(10,20));     //30
        System.out.println(sum(10,20,30));  //60
        System.out.println(sum(10,20,30,40));   //100
        System.out.println(sum(10,50.2));       //60
        System.out.println(sum(50.3,80));       //130
    }

    public static int sum(int num1,int num2){
        return num1+num2;
    }

    public static int sum(int num1,int num2,int num3){
        return num1+num2+num3;
    }

    public static int sum(int num1,int num2,int num3,int num4){
        return num1+num2+num3+num4;
    }

    public static int sum(int num1,double num2){
        return (int)(num1+num2);
    }

    public static int sum(double num1,int num2){
        return (int)(num1+num2);
    }
}

方法以及方法的重载就先介绍到这里吧,希望能对您有所帮助!

猜你喜欢

转载自blog.csdn.net/wtt15100/article/details/108014882
今日推荐