简单分析Java的求值策略原理
作者:Ermiao 时间:2022-03-22 19:14:00
形参和实参
java在定义方法时可以设置参数,参数分为形参和实参,形参是指在定义函数时用于接收外部传入数据的参数,而实参是指在调用方法时主调函数向被调函数传递的数据参数。
例如:
public class Main {
public static void main(String[] args) {
int a = 2;
int b = 3;
System.out.println(sum(a,b));//5
}
private static int sum(int i1,int i2){
return i1+i2;
}
}
其中,a,b是传入sum方法的数据为实参,i1,i2是定义方法时接收数据的参数为形参。
求值策略
实参在向形参传递值的时候有多种方法,即求值策略。求值策略分为严格求值、非严格求值和非确定求值。
其中严格求值内包含我们常见的值传递(传值)、引用传递(传引用)和地址传递(传址)。
传值:将实参的值复制副本后传给形参
传引用:将实参的引用直接传给形参
传址:将实参的引用复制副本后传给形参
Java的求值策略
地址传递可以看成值传递的一种特殊情况,java的基础类型传值为值传递,引用类型的传值是地址传递,因此可以说java中的求值策略为传值
来源:https://www.cnblogs.com/ermiao-zy/p/14852590.html
标签:Java,求值策略
0
投稿
猜你喜欢
详解JAVA 弱引用
2022-03-12 01:30:29
java实现多个文件压缩成压缩包
2022-12-06 17:45:54
C#实现策略模式
2022-02-09 17:19:01
关于JAVA11中图片与BASE64相互转换的实现
2022-12-06 06:44:11
Spring AOP实现打印HTTP接口出入参日志
2021-10-09 13:38:37
SpringMVC中事务是否可以加在Controller层的问题
2021-12-09 01:20:15
Java自动添加重写的toString方法详解
2021-11-05 14:29:13
SprintBoot深入浅出讲解场景启动器Starter
2023-11-24 20:58:58
java实现163邮箱发送邮件到qq邮箱成功案例
2023-09-18 02:38:09
java struts2学习笔记之线程安全
2022-08-07 00:13:07
SpringDataElasticsearch与SpEL表达式实现ES动态索引
2021-11-27 01:33:03
C#复制数组的两种方式及效率比较
2023-07-15 04:19:12
springboot常用注释的讲解
2023-11-03 02:53:15
IDEA解决src和resource下创建多级目录的操作
2023-03-24 07:05:37
Java Ehcache缓存框架入门级使用实例
2022-08-23 20:51:54
Java中的双重检查(Double-Check)详解
2023-02-23 21:05:23
SpringMvc+Mybatis+Pagehelper分页详解
2021-08-13 14:15:11
.NET创建、删除、复制文件夹及其子文件的实例方法
2022-12-29 06:32:45
JAVA过滤标签实现将html内容转换为文本的方法示例
2022-10-16 21:02:40
C# wpf 通过HwndHost渲染视频的实现方法
2023-08-30 03:33:35