01:什么是方法?

核心知识点

  • 定义:一段可复用的代码块,用于完成特定功能,封装逻辑,提高代码复用性和可读性。
  • 本质:Java 中方法是类的成员,属于对象 / 类,是程序的基本执行单元。
  • 优点:避免代码冗余,便于维护和修改,实现模块化开发。

02:方法的定义和调用

核心知识点

  • 方法定义语法
    修饰符 返回值类型 方法名(参数类型 参数名, ...) {
        // 方法体
        return 返回值; // 无返回值时返回值类型为void,省略return
    }
    
  • 修饰符:如public/private/static等,控制方法的访问权限和生命周期。
  • 返回值类型:方法执行后返回的数据类型,无返回值时用void
  • 方法调用
    • 无返回值:方法名(参数);
    • 有返回值:变量 = 方法名(参数);
  • 参数:方法执行需要的输入数据,分为形参(定义时的参数)和实参(调用时传入的参数)。

03:方法的重载

核心知识点

  • 定义:在同一个类中,方法名相同,但参数列表(参数个数 / 类型 / 顺序)不同的方法。
  • 重载规则
    • 方法名必须完全相同。
    • 参数列表必须不同(个数 / 类型 / 顺序至少一个不同)。
    • 返回值类型、修饰符不影响重载(仅方法名 + 参数列表决定)。
  • 示例
    public int add(int a, int b) { return a+b; }
    public double add(double a, double b) { return a+b; } // 重载
    
  • 作用:让同一功能的方法适配不同参数类型,提高代码灵活性。

04:命令行传递参数

核心知识点

  • 作用:在运行 Java 程序时,通过命令行向main方法传递参数。
  • 语法java 类名 参数1 参数2 ...
  • 获取参数main方法的String[] args数组接收参数,索引从 0 开始。
  • 示例
    public static void main(String[] args) {
        for (String arg : args) {
            System.out.println(arg);
        }
    }
    
    运行:java Test hello 123 → 输出hello123

05:可变参数

核心知识点

  • 定义:Java 5+ 新增,允许方法接收不确定数量的同类型参数,本质是数组。
  • 语法:在参数类型后加...,如方法名(参数类型... 变量名)
  • 规则
    • 可变参数必须放在参数列表最后。
    • 一个方法最多只能有一个可变参数。
  • 示例
    public int sum(int... nums) {
        int total = 0;
        for (int num : nums) {
            total += num;
        }
        return total;
    }
    // 调用:sum(1,2,3) 或 sum(new int[]{1,2,3})
    

06:递归讲解

核心知识点

  • 定义:方法自己调用自己的编程方式,将复杂问题分解为规模更小的同类子问题。
  • 递归结构
    • 递归头:终止条件,避免无限递归(死循环)。
    • 递归体:将问题分解为子问题,调用自身。
  • 示例:阶乘计算
    public int factorial(int n) {
        if (n == 1) return 1; // 递归头
        return n * factorial(n-1); // 递归体
    }
    
  • 优缺点
    • 优点:代码简洁,逻辑清晰,适合解决分治类问题(如斐波那契数列、汉诺塔)。
    • 缺点:递归深度过大会导致栈溢出(StackOverflowError),性能不如循环。
Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐