Java基础|02.方法传参机制

0x00 前言

  • Parameter:参数

  • java中只有传值,因为地址值也是值

0x01 基础数据类型的传参机制

  1. 基本数据类型的值传递,不改变原值。因为调用后会弹栈,局部变量随之消失。

    package study;
    
    public class Parameter {
    public static void main(String[] args) {
    int a = 520;
    System.out.println("Output before:" + a);
    Test(a);
    System.out.println("Output after:" + a);
    }
    static void Test(int a) {
    a = 1314;
    System.out.println("Outputting:" + a);
    }
    } >>>
    Output before:520
    Outputting:1314
    Output after:520

0x02 引用数据类型的传参机制

  1. 引用数据类型的值传递,改变原值。因为传递的是地址,地址指向堆内存,即使方法弹栈,但是堆内存数组对象依然存在。

    package study;
    
    public class Parameter_02 {
    public static void main(String[] args) {
    Test testA = new Test();
    int[] arr = {1, 2, 3, 4, 5};
    testA.test(arr);
    System.out.println("主函数中的 arr数组:");
    for (int i = 0; i < arr.length; i++){
    System.out.print(arr[i] + "\t");
    }
    }
    } class Test{
    public void test(int[] arr){
    arr[0] = 100;
    arr[1] = 200;
    System.out.println("test中的 arr数组:");
    for (int i = 0; i < arr.length; i++){
    System.out.print(arr[i] + "\t");
    }
    System.out.println("");
    }
    } >>>
    test中的 arr数组:
    100 200 3 4 5
    主函数中的 arr数组:
    100 200 3 4 5

Java基础|02.方法的传递机制的更多相关文章

  1. Java基础02 方法与数据成员

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在Java基础01 从HelloWorld到面向对象,我们初步了解了对象(obje ...

  2. Java基础02 方法与数据成员(转载)

    对象中的数据成员表示对象的状态.对象可以执行方法,表示特定的动作. 此外,我们还了解了类(class).同一类的对象属于相同的类型(type).我们可以定义类,并使用该定义来产生对象.   调用同一对 ...

  3. Groovy小结:java调用Groovy方法并传递参数

    Groovy小结:java调用Groovy方法并传递参数 @(JAVA总结) 1. 场景描述 在网上查了资料发现,java有三种方式调用groovy脚本.但是真正在实际的服务器环境中,嵌入groovy ...

  4. 【Java基础】线程和并发机制

    前言 在Java中,线程是一个很关键的名词,也是很高频使用的一种资源.那么它的概念是什么呢,是如何定义的,用法又有哪些呢?为何说Android里只有一个主线程呢,什么是工作线程呢.线程又存在并发,并发 ...

  5. java基础解析系列(八)---fail-fast机制及CopyOnWriteArrayList的原理

    fail-fast机制及CopyOnWriteArrayList的原理 目录 java基础解析系列(一)---String.StringBuffer.StringBuilder java基础解析系列( ...

  6. 我的Java开发学习之旅------>Java语言中方法的参数传递机制

    实参:如果声明方法时包含来了形参声明,则调用方法时必须给这些形参指定参数值,调用方法时传给形参的参数值也被称为实参. Java的实参值是如何传入方法?这是由Java方法的参数传递机制来控制的,Java ...

  7. Java基础之方法详解

    方法的所属性 在Java的语言中,方法相当于C语言中的函数,但是它与传统的函数也有着明确的不同:在结构化的语言中,函数是一等公民,整个程序是由一个个函数组成的:但是在面向对象的语言里,类是一等公民,整 ...

  8. java基础-02数据类型

    基本类型 整数 byte byte 数据类型是8位.有符号的,以二进制补码表示的整数 最小值是 -128(-2^7) 最大值是 127(2^7-1) 默认值是 0 byte 类型用在大型数组中节约空间 ...

  9. java基础(6):方法

    1. 方法 1.1 方法概述 在我们的日常生活中,方法可以理解为要做某件事情,而采取的解决办法. 如:小明同学在路边准备坐车来学校学习.这就面临着一件事情(坐车到学校这件事情)需要解决,解决办法呢?可 ...

  10. Java基础——clone()方法浅析

    一.clone的概念 clone顾名思义就是复制, 在Java语言中, clone方法被对象调用,所以会复制对象.所谓的复制对象,首先要分配一个和源对象同样大小的空间,在这个空间中创建一个新的对象.那 ...

随机推荐

  1. vue自定义组件的总结(一)

    1.定义组件时 <template>   <input     class="input"     :type="type"     :pla ...

  2. dockerfile配置远程ssh登录

    1.dockerfile FROM ubuntu:20.04 RUN DEBIAN_FRONTEND="noninteractive" apt-get update &&a ...

  3. Day22:数据库导入&分工&准备科研训练

    今日完成的任务: 1.与组员共同排查jar包中的问题,发现是由于未导入数据库. 网上查询后在MySQL workbench中完成了导入导出(图中user数据库). 2.完成实验报告分工,我负责结论部分 ...

  4. linux 挂载移动硬盘

    fdisk -l mkdir -p /mnt/usbhd1 mount -t ntfs /dev/sdc1 /mnt/usbhd1 # 挂载 umount /mnt/usbhd1 # 解挂载 http ...

  5. Chart控件-常用设置

    visual studio中原生控件chart控件使用时的一些常用设置 鼠标缩放功能 缩放后恢复曲线

  6. Outlook配置文件位置

    [HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles ...

  7. eval对函数this指向的影响

    js eval() 对 this 指向的影响 const fn = () => { console.log('fn this is:', this) } function evalWrapper ...

  8. docker之安装tomcat

    国内Image仓库地址:https://hub.docker.com/search?q=tomcat 安装tomcat docker pull tomcat 查看Image docker images ...

  9. ORM框架的延迟加载(懒加载)

    Hibernate的延迟加载分类的延迟加载和集合的延迟加载,类的延迟加载又分调用session的load()方法的延迟加载和加载实体单向关联的另一个实体的延迟加载 1.修改配置文件 spring.jp ...

  10. layui踩坑记

    1)layui 中选择项里面的文字内容比较多,输入框的宽度不够,需求方要求扩大宽度到现在的2倍. 从网上搜索到的方法都是通过修改上一层的DIV的宽度来实现,修改之后大概的代码大概是这样的 <di ...