加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java - 基础 - 方法

发布时间:2020-12-15 07:35:13 所属栏目:Java 来源:网络整理
导读:结构: 权限修饰符 [特征修饰符] 返回类型 方法名字(参数列表) [抛出异常]{ ? ? 方法内容。 } ? 方法代码存在硬盘中,会在方法区存一个映射。 Test t = new Test(); 参数t存在栈内存中,储存了实例的内存地址 实例存在堆内存中 实例的方法也存在堆内存中,

结构:

权限修饰符 [特征修饰符] 返回类型 方法名字(参数列表) [抛出异常]{

? ? 方法内容。

}

?

方法代码存在硬盘中,会在方法区存一个映射。

Test t = new Test();

参数t存在栈内存中,储存了实例的内存地址

实例存在堆内存中

实例的方法也存在堆内存中,执行时临时放在栈内存中执行

?

?

主方法main不属于任何class,而是属于虚拟机。(不需要调用)

?

?

测试:

import java.util.*;
public class Test{

    public int num = 1;

    public void changArray(int[] a){
        a[0] = 10;
    }

    public void changNum(int a){
        a = 10;
    }


    public static void main(String[] args){


        System.out.println("---class是引用数据类型,它的实例存在堆内存中,参数m1,m2在栈内存中存的是实例在堆内存的地址,m2 = m1赋给m2的是m1的地址,所以m1改变时m2也会改变---");
        Test m1 = new Test();
        m1.num = 1;
        Test m2 = new Test();
        m2 = m1;
        System.out.println(m1.num);
        m2.num = 2;
        System.out.println(m1.num);//m2修改后,m1也改变了

        System.out.println("---数组也是引用数据类型,变量存的也是地址---");
        int[] a1 = new int[]{1,2,3};
        System.out.println(a1[0]);
        m1.changArray(a1);
        System.out.println(a1[0]);//数组作为参数在方法中被操作后,方法执行完毕本身发生了变化

        int a2 = 1;
        System.out.println(a2);
        m1.changNum(a2);
        System.out.println(a2);//数字作为参数在方法中被操作后,方法执行完毕本身不变化
} }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读