我的Java学习之路 —— 方法

本文介绍了Java中方法的快速入门,包括如何定义和调用方法,以及方法在提高代码复用性方面的应用。同时,文章强调了方法的注意事项,如返回值类型的一致性、不允许在方法内部定义新方法,以及方法的调用方式,包括同类调用和跨类调用。
摘要由CSDN通过智能技术生成

1.方法的快速入门

先看一段代码:

public class Method{
    public static void main(String[]args){
        Person man = new Person();
        Scanner scanner = new Scanner(System.in);
        int x = scanner.nextInt();
        int y = scanner.nextInt();
        int returnRes = man.getSum(x,y);
        // 定义 int returnRes 接受 Sum的返回值
        System.out.println(returnRes);
    }
}
class Person{
    public int getSum(int n, int z){
        //public表示公开
        //int表示方法执行后返回一个int值
        //cal02表示方法名
        //(int n, int z)表示形参,接受用户传入的两个数
        int Sum = n + z;
        return Sum;
        //return sum; 表示把 sum 的值返回
    }
}

其中, 

public表示公开

int表示方法执行后返回一个int值

cal02表示方法名

(int n, int z)表示形参,接受用户传入的两个数


2.方法的妙用

public class NewMethod{
    public static void main(String[]args){
        //遍历一个数组,输出数组的各个元素值
        int [][] map = {{0,0,1},{1,1,1},{2,2,2}};
        MyTool tool = new MyTool();
        tool.printArr(map);
        tool.printArr(map);
    }
}
//要求再次遍历
class MyTool{
    //把输出的功能写到一个类中
    public void printArr(int[][] map){
        //对传入的数组遍历输出
        System.out.println("======");//分割线
        for (int i = 0; i < map.length; i++) {
            for (int j = 0; j < map[i].length; j++) {
                System.out.print(map[i][j] + " ");
            }
            System.out.println();
        }
    }
}

方法的好处是提高代码的复用性
可以将实现的细节封装供用户调用

成员方法的定义
public 返回数据类型 方法名 (形参列表){     //方法体
       语句;
       return;
       /* return可以不写或只写 return; ,
          但有需要的返回数据类型时必须要有 */
       }
举例:


3.方法的注意事项和细节

public 是访问修饰符,作用是控制方法的使用范围,可以不写,表示默认

1.一个方法最多只有一个返回值,当要返回多个值可以返回数组

例如:
class MyTool{
    //把输出的功能写到一个类中
    public void printArr(int[][] map){
    // void 表示数据类型 无返回值,当有返回值时不能用 void 应用 int double 或其他数据类型
    // printArr 表示方法名

    // (int[][] map) 表示形参列表,成员方法输入
        //对传入的数组遍历输出
        System.out.println("======");//分割线
        for (int i = 0; i < map.length; i++) {
            for (int j = 0; j < map[i].length; j++) {
                System.out.print(map[i][j] + " ");
            }
            System.out.println();
        }
    }
}

2.返回值 的值类型 必须和 return 的值类型一致或兼容

 举例:

public double a(){
   double d1 = 1.1;
   return d1;
   //可通过编译,类型一致
}

public double a(){
   int d1 = 1;
   return d1;
   //不可通过编译,类型不一致
}

public double a(){
   double d1 = 1.1;
   int d2 = 2;
   return d2;
   //可通过编译,类型兼容,int->double  发生类型转换
}

public int a(){
   double d1 = 1.1;
   int d2 = 2;
   return d2;
   //不可通过编译,类型不兼容,double->int  不发生类型转换
}

3.方法内不得再定义一个方法

class AA{                     //类
   public void f1(){          //方法

      public void f2(){       //方法内再嵌套一个方法这是错误的

      }
   }
}

4.方法的调用

1.同一个类中的方法调用:直接调用即可,例如:
public class NewMethod{
    public static void main(String[]args){
        A a = new A();
        a.Y();
        //调用方法Y
    }
}
class A{
    public void X(int x){
        System.out.println("X方法被调用 x = " + x);
        //方法X被Y方法调用且被赋值为10,输出语句
    }
    public void Y(){
        System.out.println("方法Y被调用");
        //方法Y被调用,输出语句
        X(10);
        //Y方法中又调用X方法
    }
}
2.跨类调用,例如:
public class NewMethod{
    public static void main(String[]args){
        A a = new A();
        a.m1();
    }
}
//有两个类,A和B
class A{
    public void m1(){
        System.out.println("m1方法被调用");
        B b = new B();
        //跨类调用要创造新的对象
        b.h1();
    }
}
//调用类A中m1的方法执行类B中的方法h1
class B{
    public void h1(){
        System.out.println("B类的h1方法被执行");
    }
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值