java基础知识-方法

1.方法

定义:一段定义在类中的业务逻辑的代码.

目的:封装右业务关系的代码,实现代码的复用,即简化代码书写.

2.方法定义的格式

修饰符,返回值类型 方法名(数据类型1,形参名1,数据类型2,形参2...){

  方法体;

  return[返回值]

}

修饰符:目前固定写法:public static

返回值类型:如果没有返回值:void

      如果有返回值,就是具体的数据类型(包括基本数据类型和引用数据类型)

方法名:根据命名规范,最好做到见名知意.

形参列表:形参的数据类型和形参名组成一个形参定义,多个形参之间用逗号分隔.

方法体:就是方法被调用时候执行的语句

return;表示方法体结束,如果返回值为void,后边一定不能加任何值.此时,return语句可以省略

如果有具体的返回值,后面一定要跟一个值(数据类型一致的常量,变量,表达式).

方法定义的位置:

目前位置:类中,main方法之外

方法不能嵌套定义.但是方法之间可以互相调用.

3.方法的调用

<1>.有明确返回值方法的调用

  >>>给相应类型的变量赋值

    int res = add(1,2);

    System.out.println(add(1,2));

  >>>单独调用

    add(1,2);

<2>返回值为void方法的调用

  >>>只能单独调用

    print ();

public static void main(String[] args){
    int res = add(1,2);
    System.out.println(res);
}

//
public static int add(int a,int b){
    return a + b;
}

有参数的方法被调用时,相当于给形参赋值.


方法的返回值返回给调用者 


方法之间可以互相调用:


public static void main(String[] args){


    introduce("Zhangsan");



//


public static void sayHi(){


    System.out.println("Hello");

//

public static void introduce(String name){//name = "Zhangsan";

    sayHi();//调用自定义方法

    System.out.println("My name is : " + name);

}

 

 4.方法的重载

eg1:

/*
    演示方法的重载
        在一个类中,多个方法名相同,但是形参列表不同(个数或者类型)的方法,称为方法的重载(overload)
        方法的重载和返回值无关.
        
        两同一不同:
            同类,同名
            不同形参列表
        
*/
public class OverloadDemo{
    public static void main(String[] args){
        int a = 1;
        int b = 2;
        double d = 1.5;
        // int res1 = add(a,b);
        // System.out.println(res1);
        
        double res2 = add(a,b);
        System.out.println(res2);
    }
    
    /*
    public static int add(int a,int b){
        return a + b;
    }
    */
    
    public static double add(double a,int b){
        return 0;
    }
    
    
    
    public static int add2(int a,int b,int c){
        return a + b + c;
    }
    
    public static double add1(double d1,double d2){
        return d1 + d2;
    }
    
}

eg2:

/*
    重载演示
*/
public class OverloadDemo2{
    public static void main(String[] args){
        test(1);
        
        int a = 1;
        test(a);
        
        short s = 1;
        test(s);
    }
    
    public static void test(short s){
        System.out.println("short类型形参的方法被调用");
    }
    
    public static void test(int s){
        System.out.println("int类型形参的方法被调用");
    }
}

eg3

/*
    方法重载2
*/
public class OverloadDemo3{
    public static void main(String[] args){
        int r1 = add(1,1);
        System.out.println(r1);
        
        double r2 = add(1.0,2.0);
        System.out.println(r2);
    }
    
    public static int add(int a,int b){
        return a + b;
    }
    public static double add(double d1,double d2){
        return d1 + d2;
    }
}

            

原文地址:https://www.cnblogs.com/leo9257/p/8735322.html