方法的使用

        方法是完成特定功能的、相对独立的程序段。java中的方法类似于c语言中的函数。方法被定义后就可以在不同的程序段中多次调用,故方法可以减少代码的冗余、提高编程效率。

一、方法的定义

        方法必须先创建才可以使用,该过程称为方法定义。在java程序中,方法只能在类中声明,格式如下:

[ 修饰符 ] 返回值类型 方法名 [ ( 参数表 ) ]//方法头        

{

//方法体,根据实际需求编写的代码块

}

         格式说明如下:

        1、方法声明包括方法头和方法体两部分。

        2、修饰符可以是公共访问控制符 public、私有访问控制符 private、保护访问控制符 protected 等。

        3、静态方法中static 不能省略。

        4、返回值类型与方法完成其功能后返回的运算结果的数据类型一致,如没有返回值,返回值类型使用 void 。

        5、方法名要符合标识符的命名规则,不要与 java 中的关键字重名。

        6、向方法中传递的参数应该与参数表中参数的个数和数据类型相同。

        7、对于有返回值的方法,其方法体中至少有一条 return 语句。

        8、不能在方法中再声明其他方法。

二 、方法的调用

        方法调用的格式如下:

方法名( 参数 ) ; //如果没有参数,则不用写,多个参数之间用逗号

        示例如下:

import java.util.Scanner;

public class Example_1 {
    public static int square(int x){
        int s;
        s = x * x;
        return s;
    }
    public static void main(String[] args){
        Scanner in = new Scanner(System.in);
        int n ;
        n = in.nextInt();
        int result = square(n);
        System.out.println(result);
        //也可以写成 System.out.println(square(n));
    }
}
//这是有返回值的方法的定义和调用



import java.util.Scanner;

public class Example_2 {
    public static void square(int x){
        int s;
        s = x * x;
        System.out.println(s);
    }
    public static void main(String[] args){
        Scanner in = new Scanner(System.in);
        int n ;
        n = in.nextInt();
        square(n);
    }
}
//这是无返回值的方法的定义和调用

三 、方法签名与方法重载

        (1)方法签名

        方法签名由方法名称和方法的形参列表(形参类型和形参顺序)共同组成。必须注意的是方法签名不包括方法的返回值类型和访问修饰符。

        (2)方法重载

        同一个类中定义的多个方法之间的关系,满足一定条件的多个方法相互构成重载。调用重载方法时,Java编译器(JVM)通过检查调用的方法的参数类型和个数选择一个恰当的方法。

        实现方法重载的条件:

  1. 在同一个类中
  2. 方法名相同
  3. 参数个数不同或参数类型不同后参数顺序不同

      //只有返回值不同时,不能构成重载

        示例如下:

public class Example_3 {
    public static void test(){
        System.out.println("No parameters");
    }
    public static void test(int x){
        System.out.println("x:"+x);
    }
    public static void test(int x,int y){
        System.out.println("x:"+x+" y:"+y);
    }
    public static double test(double x){
        return x*x;
    }
    public static void main(String[] args){
        test();
        test(10);
        test(10,20);
        System.out.println(test(10.5));
    }
}

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值