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);//数字作为参数在方法中被操作后,方法执行完毕本身不变化 } }
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |