理解Java中的方法

面向对象编程系列三



前言

java中方法的使用

一、什么是方法

Java中方法可以理解为一个代码片段,可以理解为c语言中的函数,方法的出现解决了重复工作性问题,当需要时直接调用该方法即可
在这里插入图片描述
注意:在一个.Java文件中 只有一个类只可以被public修饰
以main方法为例1.public表示权限 2.static表示该方法是一个静态方法 3.void表示返回值的类型 其中void表示无返回值 4.main是方法名,方法名的命名采用小驼峰的形式 5.()括号里面表示传递的参数,若没有参数传递直接()即可

另外一点补充1.方法的定义必须在类的内部
一个java文件只能有一个main方法,其余方法可以重名(涉及方法的重载)
下面展示一些 内联代码片

有了方法直接在main方法中调用add函数即可算出1的阶乘到5阶乘之和
public static void main(String[] args) {
        int result = add(5);
        System.out.println(result);
    }
//    计算数字1到5的阶乘
    public static int add(int a){
        int sum = 0;
        for (int j = 1; j <= a ; j++) {
            int b = func(j);
            sum += b;
        }
        return sum;
   }


//    计算一个数的阶乘
    public static int func(int x){
        int ret = 1;
        for (int i = 1; i <= x ; i++) {
            ret *= i;
        }
        return ret;
    }

二、形参和实参

下面展示一些 内联代码片

在swap方法中 ab是实参 swap函数中的x y是形参
运行结果:                          
x = 20y = 10
==========
a = 10b = 20

在执行main方法时候 局部变量ab在main方法的栈上开辟了两块内存空间
而在调用swap方法时候在xy在该方法运行的栈上,因此实参和形参没有任何关系,只是在调用方法时候将实参拷贝了一份给形参 所以调用完该方法后ab的值并未发生交换。
要解决此方法可以使用数组。

public static void main(String[] args) {
//        int ret = add1(1,2);
        int a = 10;
        int b = 20;
        swap(a,b);
        System.out.println("==========");
        System.out.println("a = "+ a +"b = "+b);
    }
    public static void swap(int x, int y){
        int tmp = x;
        x = y;
        y = tmp;
        System.out.println("x = "+ x +"y = "+y);
    }

1.方法重载

什么是方法重载?
方法的重载可以理解为同样的方法名有多种功能 一词多义
在这里插入图片描述
在求两个数和三个数的加和时候 main方法中都调用了add方法 达到了想要的效果,这就是方法的重载
注意方法重载需要满足的三个条件
1.方法名必须相同
2.参数类型和参数个数可以不同
3.对返回值没有要求
4.在理解方法重载的基础上比较和方法重写的关系
扩展:定在在方法内的变量为局部变量 局部变量存储在栈上

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值