JAVA 方法

本文介绍了Java中的方法,包括方法的五要素:修饰符、返回值类型、方法名、参数列表和方法体。讨论了方法的声明、返回值类型、参数列表以及实参和形参的值传递机制。此外,还详细讲解了方法重载的规则和可变参数的使用,指出可变参数必须位于参数列表的最后,且一个方法最多只能有一个。最后提到了方法的递归调用及其注意事项,强调递归必须有明确的结束条件以避免栈内存溢出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

方法五要素:

方法 就是一段可以重复被执行的代码的封装
方法定义的五要素:修饰符返回值类型方法名参数列表方法体;
public 访问修饰符
static 静态修饰符
void 返回值占位符 当方法没有返回值的时候使用void占位
main 方法名
String[] args 中 String[]参数的数据类型 args 参数名称相当与变量
{} 方法体
可变参数 注意可变参数必须放在参数列表的最后一个位置
在这里插入图片描述
方法的声明
方法定义在类中,多个方法是平行的,不能嵌套定义

 【修饰符】 返回值类型 方法名(【参数列表 】)【throws 异常列表】{
        方法体;
        【return 返回值;

}

  • 返回值类型可以是任意类型,配合return 返回值 使用,如果没有返回值这里使用void表示
  • 方法名,符号标识符命名规则规范即可
  • 参数列表,表示使用方法是传入的数据的个数和类型
    return关键字,有两个作用:①结束方法②返回数据(数据的类型必须与返回值类型匹配)

实例方法的调用

只能通过对象来调用实例方法

方法参数的值传递机制

当方法的形参是基本数据类型时,形参的改变不会影响实参

当方法的形参是引用数据类型时,形参的改变可能会影响实参

方法重载

在同一个了类中 方法参数列表不同的同名方法这种表现形式我们称之为方法重载

  • 参数列表 参数的数量 参数的数据类型
  • 此处参数的数据类型 指的相同参数位置上的数据类型
  • 此处参数的数据类型 指的相同参数位置上的数据类型
public class Eat {
    public static void main(String[] args) {
        Cat();
        Cat("小鱼");
        Cat("大鱼", 6);
        Cat(6, "大鱼");
    }
    public static void Cat() {
        System.out.println("吃鱼");
    }

    public static void Cat(String food) {
        System.out.println("吃" + food);
    }

    public static void Cat(String food, int count) {
        System.out.println( "fond 和 count 吃"+ count + "个" + food);
    }

    public static void Cat(int count, String food) {
        System.out.println("count 和 food 吃"+count + "个" + food);
    }
}
public class Car {
    public static void main(String[] args) {
        Car();
        Car("红色");
        Car("黄色", 80);
        Car(90, "蓝色");
    }
    public static void Car() {
        System.out.println("很酷的车");
    }

    public static void Car(String color) {
        System.out.println( "小车的颜色是"+color);
    }

    public static void Car(String color, int count) {
        System.out.println( "小车的颜色是  "+color+"速度是"+count);
    }

    public static void Car(int count, String color) {
        System.out.println("小车的颜色是  "+color+"速度是"+count);
    }
}

可变参数

如果方法的形参类型确定,但个数不确定,这时可以定义为可变参数。比如:int… a
//可变参数

//a变量表示一个数组
public static void fun(String s,int a,int... a){
    
}

调用具有可变参数的方法时,可以传入的参数个数可以任意个。

这些实参会被封装到一个数组中,可变参数的变量实际是一个数组。

一个方法最多只能有一个可变参数

一个方法如果有多个参数,可变参数必须在最后一个

可变参数可以接收一个同类型的数组

方法的递归
方法自身调用自身的情况就是方法的递归调用

递归的分类

  • 直接递归:方法自己直接调用自己
  • 间接递归:方法自己间接调用自己,比如方法a调用方法b,b调用a

递归的注意事项:

  • 递归必须有出口(结束条件),否则就是无穷递归,类似死循环。会导致栈内存溢出。
  • 递归即使有结束条件,也不宜递归次数太多,否则还是可能导致栈内存溢出。

对象数组

public class Test {
    public static void main(String[] args) {
        Employee [] employee =new Employee[5];
        employee[0] =new SalaryEmployee("小明",5000,22,1);
        employee[1] =new SalaryEmployee("小黑",5000,21,1);
        employee[2] =new SalaryEmployee("小红",5000,21,2);
        employee[3] =new HourEmployee("小昂",10,18);
        employee[4] =new Manager("大哥",8000,21,1,0.5);

        for (int i=0;i< employee.length;i++){
            System.out.println(employee[i]);
        }
    }
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值