1.形参:用来接收调用该方法时传递的参数。只有在被调用的时候才分配内存空间,一旦调用结束,就释放内存空间。因此仅仅在方法内有效。
2.实参:传递给被调用方法的值,预先创建并赋予确定值。
3.传值调用:传值调用中传递的参数为基本数据类型,参数视为形参。
4.传引用调用:传引用调用中,如果传递的参数是引用数据类型,参数视为实参。在调用的过程中,将实参的地址传递给了形参,形参上的改变都发生在实参上。
1.基础数据类型(传值调用)
2.引用数据类型(引用调用)
传引用,方法体内改变形参引用,不会改变实参的引用,但有可能改变实参对象的属性值。
举两个例子:
(1)方法体内改变形参引用,但不会改变实参引用 ,实参值不变。
public class TestFun2 {
public static void testStr(String str){
str="hello";//型参指向字符串 “hello”
}
public static void main(String[] args) {
String s="1" ;
TestFun2.testStr(s);
System.out.println("s="+s); //实参s引用没变,值也不变
}
}
执行结果打印:s=1
(2)方法体内,通过引用改变了实际参数对象的内容,注意是“内容”,引用还是不变的。
public class TestFun4 {
public static void testStringBuffer(StringBuffer sb){
sb.append("java");//改变了实参的内容
}
public static void main(String[] args) {
StringBuffer sb= new StringBuffer("my ");
new TestFun4().testStringBuffer(sb);
System.out.println("sb="+sb.toString());//内容变化了
}
}
执行结果,打印:sb=my java 。
所以比较参数是String和StringBuffer 的两个例子就会理解什么是“改变实参对象内容”了。
总结:
1.java的基本数据类型是传值调用,对象引用类型是传引用。
2.当传值调用时,改变的是形参的值,并没有改变实参的值,实参的值可以传递给形参,但是,这个传递是单向的,形参不能传递回实参。
3.当引用调用时,如果参数是对象,无论对对象做了何种操作,都不会改变实参对象的引用,但是如果改变了对象的内容,就会改变实参对象的内容。
- 大小: 20.4 KB
分享到:
相关推荐
形参实参影响调试程序 在编程中,函数调用是非常重要的概念之一。函数调用可以将实参传递给形参,从而实现函数之间的数据交互。在本文档中,我们将讨论形参和实参的关系,以及它们在调试程序中的影响。 形参和实参...
函数的类型可以是void、int、char等,函数名是函数的唯一标识符,形式参数是函数被调用时用于接收实参值的变量。函数体是函数的实现部分,包括说明部分和执行部分,其中说明部分包括函数中所用的局部变量等的说明、...
在VB.NET编程中,了解`ByVal`和`ByRef`关键字以及形参(形式参数)和实参(实际参数)的区别是至关重要的。这些概念直接影响到函数或方法调用时参数值的传递方式,从而影响程序的行为。下面将详细阐述这两个关键字...
在VB.NET编程中,了解`ByVal`和`ByRef`关键字以及形参(形式参数)和实参(实际参数)的区别是至关重要的。这些概念是函数和过程调用的基础,直接影响到参数值的传递方式。 `ByVal`和`ByRef`是VB.NET中的两个参数...
形参是函数被调用时用于接收实参值的变量,包括参数名和参数类型。函数体包括两部分:说明部分和执行部分,其中说明部分包括函数中所用的局部变量等的说明、函数中要调用的函数的说明。 函数的调用包括嵌套调用和...
在Python编程语言中,形参(formal parameters)和实参(actual parameters)是函数调用的核心概念。形参是函数定义时使用的变量,它们在函数内部起到接收实参值的作用,而实参则是调用函数时传递给形参的值。理解这...
在定义和使用函数时,我们会遇到形参(形式参数)和实参(实际参数)的概念。形参是在定义函数时使用的参数,它们在函数体内部使用,而实参是在调用函数时提供的具体值。形参和实参之间的关系类似于函数的蓝图与实际...
函数的参数分为形参和实参两种。在本小节中,进一步介绍形参、实参的特点和两者的关系。形参出现在函数定义中,在整个函数体内都可以使用,离开该函数则不能使用。实参出现在主调函数中,进入被调函数后,实参变量也...
本文以实例阐述了C++中形参与实参的区别,有助于读者加深对于C++形参与实参的认识。 形参出现在函数定义中,在整个函数体内都可以使用, 离开该函数则不能使用。实参出现在主调函数中,进入被调函数后,实参变量也不...
The C programing language 发明C的科学家写的书
JavaScript中的形参(形式参数)和实参(实际参数)是函数调用的核心概念。形参是在函数定义时声明的,它们是函数内部使用的占位符,用于接收调用时传递的实际值。实参则是调用函数时提供的具体值,它们会被绑定到...
"C语言形参和实参传递的区别详解" C语言的形参和实参传递是编程语言中非常重要的概念,它们之间的区别对程序的执行结果产生了很大的影响。形参是函数定义时声明的参数,而实参是函数调用时传递的参数。通过形参和...
Python 068.形参和实参_文档字符串_函数注释.mp4
C++指针使用形参改变实参的方法 C++语言中,指针是一种非常重要的数据类型,它可以用来间接访问内存中的数据。今天,我们将讨论如何使用指针作为形参来改变实参的值。 在C++中,函数的形参可以是指针类型的,这...
在函数定义中声明的参数称为“形参”(形式参数),而在调用函数时传递的值称为“实参”(实际参数)。理解形参与实参的关系对于编写正确、有效的PHP函数至关重要。 1. 形参与实参的数量对应: 当定义函数时,我们...
### C语言中的实参与形参 在C语言中,函数是程序设计的重要组成部分,而参数传递则是函数间数据交互的基础。本篇文章将详细介绍实参(实际参数)和形参(形式参数)的概念、用途及它们之间的区别。 #### 一、实参...
本资源摘要信息涵盖了C语言函数的基本概念、函数调用、函数说明、实参和形参、函数返回值、函数嵌套调用等知识点,并通过习题的方式对这些知识点进行了详细的解析和总结。 一、函数的基本概念 在C语言中,函数是指...