目录

基本概念

代码与实例

源码打包下载


基本概念

最近的系统中,Java程序和C++程序混着,很多程序都是用Java搞的,不得不稍微研究下Java的细节,其中很关键的一点,就是如何在Java中传引用,因为要接收一些值,在代码中试了,用&这个玩意是没有效果的。

下面给出Java程序中函数传参数,哪个是传值,

这里发现,如果是基本数据类型:int这种,都是传值。

而自己写的Class为传地址过去,

Integer和String在封装后,里面有个final,这样实际是传地址,但赋值的时候,却创建了个新的。

代码与实例

程序运行截图如下:

源码如下:

public class Main {public static void main(String args[]) {int intFunctionValue = 100;intFunction(100);System.out.println("Main functionValue : " + intFunctionValue);System.out.println("---------- 华丽的分割线 ----------");Integer IntegerFunctionValue = new Integer(100);IntegerFunction(IntegerFunctionValue);System.out.println("Main IntegerFunction : " + IntegerFunctionValue);System.out.println("---------- 华丽的分割线 ----------");Struct struct = new Struct();struct.setAge(17);struct.setName("heheda");ClassFunction(struct);System.out.println("Main ClassFunction : " + struct);System.out.println("---------- 华丽的分割线 ----------");}static void intFunction(int value){value = 200;System.out.println("intFunction value : " + value);}static void IntegerFunction(Integer value){value = 200;System.out.println("IntegerFunction value : " + value);}static void ClassFunction(Struct value){value.setAge(18);value.setName("Hello World");System.out.println("ClassFunction value : " + value);}static class Struct{private Integer age;private String name;public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}@Overridepublic String toString() {return "Struct{" +"age=" + age +", name='" + name + '\'' +'}';}}
}

源码打包下载

地址如下:https://github.com/fengfanchen/Java/tree/master/FunctionParament

Java工作笔记-Java函数参传值传引用问题相关推荐

  1. Java工作笔记/Java面试题/Java八股文/Java常用API

    码农工具包 hutool工具 hutool工具类判断各种类型数据 <!-- https://mvnrepository.com/artifact/cn.hutool/hutool-all --& ...

  2. JAVA学习笔记五---函数

    JAVA学习笔记五---函数 5.1 方法的学习 编写一个程序,求圆的周长和面积. package practice; /*** 编写一个程序,求圆的周长和面积.* @author iszhangyo ...

  3. Java自学笔记——Java面向对象——04.抽象类、接口、内部类

    Java 面向对象各节 Java自学笔记--Java面向对象--01.回顾方法 Java自学笔记--Java面向对象--02.构造器.类和对象 Java自学笔记--Java面向对象--03.封装.继承 ...

  4. 廖雪峰Java自学笔记------Java简洁

    廖雪峰Java自学笔记------Java简洁 这是专门针对小白的零基础Java教程. 为什么要学Java? 因为Java是全球排名第一的编程语言,Java工程师也是市场需求最大的软件工程师,选择Ja ...

  5. Java笔记-Java日常笔记-Java核心语言-史上最全Java笔记-Java烂笔头-实时更新(~v~)

    阿一的日常Java笔记,实时更新,有什么问题可以留言交流一下,大家一起共同进步!!! 1.Java基础 1.1.基本语法 1.1.1.关键字 ​ 定义:被java赋予特殊含义的字符串(单词): ​ 关 ...

  6. java学习笔记 java编程思想 第6章 访问权限控制

    文章目录 6.1 包:库单元(the library unit) 6.1.1 代码组织 6.1.2 创建独一无二的包名 练习1 练习2 6.1.3 定制工具类 6.1.4 用import改变行为 练习 ...

  7. 狂神说Java学习笔记 Java基础

    目录 机器语言 第二代语言(汇编语言) 第三代语言 高级语言 Java特性和优势 JDK(Java Development Kit) JRE(Java Runtime Enviroment) JVM( ...

  8. JAVA入门笔记·JAVA名词及环境搭建

    文章目录 一.JAVA主要特征 二.JAVA名词解释 三.环境搭建 一.JAVA主要特征 面向对象 分布式 跨平台 更安全 二.JAVA名词解释 JRE(运行环境) 包括JAVA虚拟机和JAVA程序所 ...

  9. Java学习笔记--Java中必记常见异常

    JAVA常见异常 Java.io.NullPointerException null 空的,不存在的 NullPointer 空指针 空指针异常,该异常出现在我们操作某个对象的属性或方法时,如果该对象 ...

最新文章

  1. .Toolkit 增补
  2. Spring Boot——SpringMVC带URL前缀的静态资源解决方案
  3. 私活利器,docker快速部署node.js应用
  4. DS和[address]
  5. bat获取命令返回值_全网都在找的redis字符串命令,总结在这了
  6. HTTP协议的请求与响应和CSS属性和定位
  7. 【Angular 4】数据绑定
  8. SFB 项目经验-49-耗时5天修复某上市企业2000人邮箱数据库实录(五一巨献)
  9. Python OS sys模块
  10. [RK3399][Android7.1] ADB功能怎么Debug
  11. android4.0.3校准屏幕和隐藏statusbar
  12. 小米路由器青春版R1CL刷入OpenWrt
  13. 怎么把度分秒化成小数_度分秒转换成小数
  14. 导出手机QQ聊天记录到电脑
  15. 局域网联通公网小部分知识点
  16. 稀疏矩阵的三种存储方法
  17. 科沃斯、石头科技的扫地“茅”之争
  18. 大数据量分页存储过程效率测试附代码(转http://www.cnblogs.com/lli0077/archive/2008/09/03/1282862.html)...
  19. pt、px、rpx、em、rem到底是什么
  20. Mac Xcode 各种缓存清理

热门文章

  1. 讲真话的朋友才是我们需要的!
  2. 有人说学了C语言,两天就能学会Java,两个星期就可以找工作?
  3. 很有气势的语言openeim
  4. 十句保你职场不败的名言
  5. Windows 2000缓冲区溢出入门
  6. 想加入IT行业为何建议你学Python,不要错过时机哦
  7. 一个黑客和一个电脑白痴的对话
  8. linux 先编译 再安装,Linux下编译安装FFmpeg
  9. 大数据Hadoop2.x与Hadoop3.x相比较有哪些变化
  10. 聊聊用于特征处理的tsfresh