一个类的多个实例,其方法在内存中只有一份拷贝 一个类的多个实例,其方法在内存中只有一份拷贝方法存在于代码区中,而对象在堆中,而局部变量和方法参数存在于栈中,当调用一个对象的方法时就会执行代码区中的相应的指令即调用方法,当方法使用完后,即return 后 那些变量将被释放,所以方法在内存中只有一份拷贝,是不是这样,求解答,谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 即调用方法,当方法使用完后,即return 后 那些变量将被释放,所以方法在内存中只有一份拷贝,是不是这样不是这样的,方法只有一份拷贝,是因为方法被编译成指令,保存在代码区,方法执行的时候,程序指针会跳到方法指令地址去取指令执行,不管有多少对象实例,方法的指令都是一样的,所以没必要有多份拷贝,一份就可以了,执行方法的时候,就到代码区的方法地址去取指令执行。而所谓的return 后变量释放什么的,那些是指方法栈的释放,不是一回事。 方法只是一堆字节码,一堆操作码,.class加载后就已经存在方法区对象是在堆中,局部变量在方法调用时才有,位于java栈的各个帧的局部变量区 JAVA 如何输出数组里的元素 关于泛型继承的问题<E> 求助: readLine之后怎么保存到String数组里面呢? sql语句中的迭代插入 关于类的关系 如何把菜单项中的选项和右键菜单项关联到一个键盘事件上? 菜鸟提问:怎么在JtextField中设置不可写 javabean的ChangeEvent事件如何自动触发 谁教我用Tomcat+jdk1.4 运行Servlet? 关于自定义运行时异常的问题 jstl问题
而所谓的return 后变量释放什么的,那些是指方法栈的释放,不是一回事。
对象是在堆中,局部变量在方法调用时才有,位于java栈的各个帧的局部变量区