方法的传参过程

简介: 方法的传参过程
1.方法的重载

重载的概念 :

在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数 类型不同即可。

重载的特点:

与返回值类型无关,只看参数列表,且参数列表必须不同。(参数个数或参数类 型)。调用时,根据方法参数列表的不同来区别。

重载示例:

//返回两个整数的和
int add(int x,int y){return x+y;}
//返回三个整数的和
int add(int x,int y,int z){return x+y+z;}
//返回两个小数的和
double add(double x,double y){return x+y;}

例如:

System.out.println()方法就是典型的重载方法,其内部的声 明形式如下:

public void println(byte x)
public void println(short x)
public void println(int x)
public void println(long x)
public void println(float x)
public void println(double x)
public void println(char x)
public void println(double x)
public void println()
2.可变个数的形参

JavaSE 5.0 中提供了Varargs(variable number of arguments)机制,允许直接定 义能和多个实参相匹配的形参。从而,可以用一种更简单的方式,来传递个数可 变的实参。

//JDK 5.0以前:采用数组形参来定义方法,传入多个同一类型变量
public static void test(int a ,String[] books);
//JDK5.0:采用可变个数形参来定义方法,传入多个同一类型变量
public static void test(int a ,String…books);

说明:

  1. 声明格式:方法名(参数的类型名 …参数名)
  2. 可变参数:方法参数部分指定类型的参数个数是可变多个:0个,1个或多个
  3. 可变个数形参的方法与同名的方法之间,彼此构成重载
  4. 可变参数方法的使用与方法参数部分使用数组是一致的
  5. 方法的参数部分有可变形参,需要放在形参声明的最后
  6. 在一个方法的形参位置,最多只能声明一个可变个数形参

对象数组

3.方法的值传递机制

再谈方法之:

方法的值传递机制

1.(复习)对于方法内声明的局部变量来说:如果出现赋值操作

如果是基本数据类型的变量,则将此变量保存的数据值传递出去。

如果是引用数据类型的变量,则将此变量保存的地址值传递出去。

2,方法的参数的传递机制:值传递机制

规则:实参给形参赋值的过程

如果形参是基本数据类型的变量,则将实参保存的数据值赋给形参。

如果形参是引用数据类型的变量,则将实参保存的地址值赋给形参。

例题

基本类型传参

image.png

引用类型传参

image.png

4.递归方法

1.何为递归方法?方法自己调用自己的现象就称为递归。

2.递归方法分类:直接递归、间接递归

3.使用说明:

-递归方法包含了一种“隐式的循环”。

-递归方法会重复执行某段代码,但这种重复执行无须循环控制。

-递归一定要向已知方向递归,否则这种递归就变成了无穷递归,停不下来,类似于死循环·。最终发生栈内存溢出

相关文章
|
JSON 前端开发 数据格式
四种常见的参数传递方式
四种参数传递方式
216 0
|
6月前
|
存储 前端开发 JavaScript
前端基础(十一)_函数声明及调用、函数的形参与实参、arguments参数、函数的参数类型、函数中的问题
本文介绍了JavaScript中函数的声明及调用、形参与实参的概念、arguments对象的使用、函数参数的类型以及函数中this的作用。通过示例代码详细解释了函数如何接收参数、如何处理参数个数不匹配的情况,以及函数在不同上下文中this的指向。
74 1
|
7月前
|
存储 前端开发 rax
函数过程的调用
函数过程的调用
|
10月前
|
存储 Java
Java数组与带参数方法:定义、调用及实践
Java数组与带参数方法:定义、调用及实践
101 1
|
10月前
|
数据安全/隐私保护 C++
C++ 构造函数实战指南:默认构造、带参数构造、拷贝构造与移动构造
C++中的构造函数是特殊成员函数,用于对象初始化。类型包括默认构造函数(无参数)、带参数构造函数、拷贝构造函数和移动构造函数。默认构造函数设置对象默认状态,带参数构造函数允许传递初始化值。拷贝构造函数复制已有对象,移动构造函数高效转移资源。构造函数的访问权限可控制为public、private或protected。理解构造函数有助于编写健壮的C++代码。关注公众号`Let us Coding`获取更多内容。
145 0
|
10月前
|
存储 小程序
小程序路由传参的方法?
小程序路由传参的方法?
179 0
|
10月前
|
小程序
小程序封装组件简单案例,所有小程序适用(传入参数、外抛事件、传入样式)
小程序封装组件简单案例,所有小程序适用(传入参数、外抛事件、传入样式)
134 0
|
存储 小程序
小程序路由传参的方法
小程序路由传参的方法
352 0
|
程序员 Python
python中函数的序列传参,列表拆解传参、字典拆解传参
python中函数的序列传参,列表拆解传参、字典拆解传参
227 0
|
C++ 编译器 安全