java中循环外定义变量与循环内定义变量占用内存与效率问题? 本帖最后由 Inflexible_lin 于 2013-01-15 09:53:29 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我个人也习惯用红色部分,毕竟少了很多次的申请空间,入栈和出栈的操作不过,自己在编程的时候要注意不让上一次的结果影响到下一次循环比如上一次 a = 3, 当下一次循环在给a赋值的时候出了错误,而你捕获了错误缺没修正a的值,程序继续执行,那么这时候a=3还成立,可能就会有问题了,如果是每次都定义,那就不存在这样的问题。 仅是作用域不一样,栈中的空间在编译这个代码的时候大小就确定下来了,运行这个方法时空间就已经分配好了,不要想当然的以为声明一次就要分配一次空间,那是c语言,java可以重用这些超出作用域的空间只要用javap查看方法字节码,看看使用的局部变量表的大小和使用方式即知 java这种基于虚拟机的语言,是跟单纯的C不同,C语言的原则是相信程序员能做好一切,因此它不会帮你做多少事情,需要考虑代码优化,内存占用等。而java中的原则就是:要写好的代码而不是快的代码 java有垃圾回收的,一般情况下不用关注这个,除非有大量的缓存存在,需要考虑管理缓存,不让堆空间过大。。 菜鸟求助!!! 新手求助 弄了4个小时没搞明白 已经导入的*.csv数据文件怎么用存储应用啊? int i = 012;这怎么解释? java 的FTP连接函数怎么转换成被动模式 Panel 的使用...不会呀........弄了半天.用Frame就对了.我改成Panel全错...郁闷死啦!!!! 请问drools的一个关联关系的问题 一个想学java的!!! 哎!再简单不过了,日期类型的问题:请进 高手在吗?求助下这个非常简单的程序 Java 如何获取多个网卡IP地址?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货