个人学习---Java方法

Java方法

方法定义

方法 是一种语句的集合,执行某一具体的功能,是解决一类问题的步骤的有序组合。方法类似于函数,是用来完成特定功能的代码片段。

注:方法具有原子性,1个方法只能完成1个功能。

方法包含一个方法头和一个方法体,具体格式,如下图所示。

其中:

  1. 修饰符:定义了该方法的访问类型。

  2. 返回值类型:定义了返回值的数据类型,若是没有返回值,则类型选择void。

  3. 方法名:为该方法的实际名称。

  4. 参数:类似于占位符,在方法中的参数起到定义的作用,为形参。

    补充:参数分为形式参数实际参数形式参数起到定义作用,即用来接收外界的输入数据。实际参数则是在调用时,实际传递的参数叫做实际参数。

  5. 方法体:包含具体语句,用于定义该方法的功能。

  6. 返回值:void类型,无返回值,不用使用return语句。其他类型,若有返回值,必须使用return语句来进行返回值的返回操作。

    补充:return语句除了具有返回结果的功能,还具有中止方法的作用,如下图所示。

方法调用

  1. 当方法返回一个值的时候,方法调用通常被当做一个值。

  2. 当方法返回值类型为void时,方法调用为一条语句。

    1、2演示,如下图所示。

  3. 调用方法:对象名 +"."+ 方法名(实参)。

    注:使用Ctrl+双击可查看选中的方法、对象源码。

    补充:

    1. 值传递(pass by value)是指在调用方法的时候,将实参复制一份到方法中,变更方法中的参数,不会影响实参

    2. 引用传递(pass by reference)是指在调用方法的时候,将实参的地址直接传递到方法中,变更方法中的参数,会影响实际参数

    3. Java中只有值传递!!!

方法重载

在一个类中,有相同的函数名称,但形参不同的方法,就叫做方法重载。

方法重载要求:

  1. 在一个类中,方法名称必须相同。

  2. 参数列表不同。(注:参数个数、参数类型、参数排列顺序不同,都可)

  3. 返回值类型可相同或不同。

    eg:两个同名方法的返回值类型相同,方法内部参数类型不同,则可以构成方法重载,但return时,方法类型与参数类型不一致的方法,且参数类型容量高于方法类型,会出现报错,如下图所示。

    使用强制类型转换即可解决,如下图所示。

  4. 但仅返回值类型不同,不构成方法重载。如下图所示。

方法重载,如下图所示:

命令行传参

使用命令行传参,可以实现在运行一个程序的时候,再传递给它消息。

注:要在命令行使用Java程序,可在.Java文件所在处路径用Javac命令编译。但是,要运行在包下的Java程序,编译与前者相同,运行时需要转到包文件的路径且需要添加写清各级包名后,才能运行。运行时可在后方传递参数,如下图所示。

补充:math方法也可以进行传参。

可变参数

可变参数又称不定项参数,在方法声明中,在指定参数类型后加省略号"..." ,如下式子所示。

public double add(double ...i){}

使用效果,如下图所示。

注:

  1. 只能有一个可变参数。

  2. 可变参数为方法的最后一个参数,普通参数必须在它之前声明。

  3. 可变参数的本质是数组。

递归

递归的本质是自己调用自己,即:用有限的语句来定义对象的无限集合。递归适用于少量、有限的情况下使用,效率会更高。

递归结构包括:

  1. 递归头:又称边界条件,指的是不调用自身方法的时候,如果没有递归头将会陷入死循环。

  2. 递归体:指的是调用自身方法的时候

    递归效果,如下图所示。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值