函数的定义

函数的定义:

 方法:对单独功能模块或不连续的重复性代码的封装

 定义:

    public static 返回类型 方法名(形参列表){

            // 方法体 完成功能所书写的语句

        }

 /* PS:方法本身是一个单独的模块,所以它的定义是在其他方法之外的。

        所有的方法都是平行关系,千万注意不要在一个方法里面定义另一个方法

        方法的定义只能写在Java类的花括号中

     */

// 修饰符 --- 定义本方法的访问范围和访问方式 目前固定书写为 Public  static

// 返回类型 -- 定义本方法在执行结束后,是否有返回的结果,该结果是什么数据类型(能且只能书写一个)

// 函数名(方法名)-- 定义方法是给方法取的名字属于自定义标识符,按照规范书写即可

// 行参列表 -- 定义本方法在执行前需要从使用者身上得到的初始数据,如果没有初始数据,那么可以不写

// 方法体 -- 书写任意的语句,实现该方法所要完成的功能即可

1、对函数定义位置的说明

​ a- 方法本身是一个单独功能模块的封装,所以它的定义必须要在其他方法之外;

​ b- 所有的方法都是平行关系,千万别在另一个方法里面去定义另一个方法

​ c- 方法的定义只能书写在Java类的定义(花括号)中

2、参数 可以从方法外部传入数据进行运算

分类:

形参 形式上参数(具体的参数数据,需要在调用方法时由使用者给出,所以定义方法的时候,只能使用变量声明语法,先确定参数的类型、个数和顺序)

实参 在调用方法时,真正给形参传递的数据,形参定义的类型、个数和顺序是什么样的,给实参是就是什么类型、个数和顺序

public static void compare(int num1,int num2,int num3){

}

public static void compare1(String str,int num2,double num3){

}

// 调用 方法时 compare1("abcd",100,3.14);

3、返回类型 -- 定义本方法在执行结束后,是否有返回的结果,该结果是什么数据类型(能且只能书写一个)

 

4.方法重载

在同一个类中,同名方法有不同的参数列表,称之为方法重载

参数列表不同:参数类型,或参数个数,或参数顺序不同和参数名无关

 

5.递归

当方法自已调用自已时,根据方法的执行流程,会形成一种类似于循环执行该方法的情况,就称之为“递归”

递归是我们所学的“第四种循环”

递归一定要有结束的条件,没有结束条件的话,进入无止境的递归,最终导致内除被完全消耗,

递归适用于:原始问题可以转换为为问题解决方案相同且规模更小的新问题,知道问题规模小到某一基本情况为止(递归结束的条件)

递归的使用特点

 可采用递归算法解决的问题有这样的特点:

  1. 原始的问题转化为解决方法相同的新问题
  2. 而新问题的规模要比原始的问题小
  3. 新问题又转化为规模更小的问题;
  4. 直到最终归结到最基本的情况---递归的终结条件。

​ a- 方法执行结束后,没有返回的结果 void(无返回值)

 b-方法执行结束后,有需要返回的数据,此时需要把返回类型书写为返回数据的数据类型(基本或引用数据类型)   

​ 要返回的数据 叫做 返回值   通过语法 return 返回值;

PS: 1 如果方法定义了返回类型(不是void),就必须给方法返回数据,如果不给会报错

​    2 如果方法定义了返回类型(不是void),那么调用方法的语句可以将其视作一个数据进行操作(声明变量保存、输出、通过运算符对其进一步运算都可)

​   3 如果方法定义的返回类型为void,那么不能使用 return 返回值;这一语法,且不能调用该方法的语句视作数据进行操作

​   4 如果方法定义的返回类型为void,虽然不能使用return 返回值这一语法,但能使用return关键字,因为return关键字,除了可以用于返回数据之外,还可以用于结束方法

 

6.return的作用:

  返回类型是void:return可以终止方法

其他类型的话:return 后要加返回值

7.方法调用栈:

当多个方法出现嵌套调用时,最先执行的方法最后结束;此时,呈现出一种“先进后出”的栈结构,称之为 方法调用栈

在使用方法调用时,注意不要产生方法本身调用自已的情况

如果出现,那么就有可能出现Stack0verflowError(堆栈溢出错误)

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值