MyException - 我的异常网
当前位置:我的异常网» J2SE » 越深入java 就觉着java做得越烂(个人觉得应当做得更

越深入java 就觉着java做得越烂(个人觉得应当做得更好)(3)

www.MyException.Cn  网友分享于:2015-08-26  浏览:6015次

------解决方案--------------------
楼主可能忘记了字段的属性也要吃内存的啊
------解决方案--------------------
包装类不是为了节省系统开销而存在的.
同样:面向对象也不是为了节省系统开销而存在的.

同时,内存的占用与释放不但来自于底层结构,真正重要的还是项目设计.
如同你要导入2000万条记录一样,在一个事物里控制,就是用汇编来写代码,内存也是不够的.

另外,包装类的内存占用计算貌似是错误的,它比你想象中更大,严格遵守了Java类的标准,有自己的属性和行为.
而BigDecimal类有可能是最大的(这个没计算).
------解决方案--------------------
JAVA从它诞生开始,就以吃内存和速度慢而闻名,楼主说的 Byte 占用多少字节这档子事,估计从 java 还在吃奶时就已经存在了,但是这么多年来也都活下来了,并且活得越来越精神,不但企业用它,而且小设备也一直用它。随着这些年来硬件成本越来越低,内存价格更是一路往下跌,所以针对楼主的投诉,JAVA的设计者可能跟本不会考虑。
------解决方案--------------------
我只是根据结果再解释原因的
比如说为什么String占用了40 bytes;

ps: 另外上面的String的我也解释错了
Java code

// String的字段有
//    char value[]=new char[0]; // 16bytes
//    int offset;  \ 2个共用 8bytes
//    int count;   /
//    int hash;    // 8bytes
//    long serialVersionUID = -6849794470754667710L;  // 类属性不算,因为共用一个
//    ObjectStreamField[] serialPersistentFields = new ObjectStreamField[0]; // 类属性不算,因为共用一个
//  加上自身的8bytes
// 正好40bytes

------解决方案--------------------
jsp比asp和php都快........
------解决方案--------------------
探讨
cangyue87:没算过怎么说我的是错的? 你还是算算再来说。

------解决方案--------------------
getRuntime方法只能统计当前的运行时对象,
它统计的是当前栈的总消耗.

gc的调用同样是不可控制的,
不过看楼主的运行效果貌似回收很及时的样子,
也许是因为程序短小的缘故喵???
------解决方案--------------------
探讨
楼上,很多大网站都选择用PHP,就是因他快,包括IBM在内的大公司,都是支持PHP的。

------解决方案--------------------
63楼抓误....."网站的运行效率"说法很那啥,我想表达的是网站整体的稳定性和承受访问量的能力,那得看你怎么设计的,当然我完全外行喵~``
------解决方案--------------------
63楼抓误....."网站的运行效率"说法很那啥,我想表达的是网站整体的稳定性和承受访问量的能力,那得看你怎么设计的,当然我完全外行喵~``
------解决方案--------------------
一、基础数据封装类的16个字节,这个就是“面对对象”的代价。如果面对过程,在这里设计的会变得繁复,而且复用性差。这个问题如果想不明白的话。你可以去比较一下在C++里面的string使用和在java中的string使用就可以体会到了。
二、关于数组大小的问题,本身是可以增加大小的。
1.采用固定大小的办法是为了提高性能,这个应该都明白。那么关于这个大小是多少的问题,太小了,频繁增加性能反而降低,太大了又不能起到提高性能的作用。这个平衡点,我觉得sun找得还可以。
2.如果只在需要的时候给内存,则需要另给内存保留指针,该指针指向新增元素地址。频繁增加,不但更占用内存,而且降低性能。引伸出的问题是实际是不是需要频繁增加的呢,我觉得是的,尤其是一些高级类里面,不断地要掉父类构造和释放方法时。
总结、短时间内不会改变,即使改变也是增大。减小几乎不可能。

------解决方案--------------------
忘记讲了,完全同意52楼的看法。
------解决方案--------------------
一个对象占用的内存跟其属性有关,
属性越多其占用的内存就越多不是吗?
就像是包装类一样,它就只保存被包装的数据吗?
它一样有其他的属性,要消耗内存的!
------解决方案--------------------
探讨
63楼抓误....."网站的运行效率"说法很那啥,我想表达的是网站整体的稳定性和承受访问量的能力,那得看你怎么设计的,当然我完全外行喵~``

------解决方案--------------------
楼主应回到机器语言时代。
------解决方案--------------------
关注,见到很多牛人的回复。
LZ也是牛人。
------解决方案--------------------
同意http://topic.csdn.net/u/20081202/15/20ba8be0-04c7-4e54-bdd9-d2f6b3c1f413.html?seed=53448279 说的!!!
另外不认为Java有多牛,每个语言都有自己优势的地方,在某些方面Java也是废材!

------解决方案--------------------

文章评论

Java程序员必看电影
Java程序员必看电影
 程序员的样子
程序员的样子
Google伦敦新总部 犹如星级庄园
Google伦敦新总部 犹如星级庄园
我是如何打败拖延症的
我是如何打败拖延症的
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
什么才是优秀的用户界面设计
什么才是优秀的用户界面设计
程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
初级 vs 高级开发者 哪个性价比更高?
初级 vs 高级开发者 哪个性价比更高?
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
程序员的鄙视链
程序员的鄙视链
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
程序员和编码员之间的区别
程序员和编码员之间的区别
鲜为人知的编程真相
鲜为人知的编程真相
如何成为一名黑客
如何成为一名黑客
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
中美印日四国程序员比较
中美印日四国程序员比较
旅行,写作,编程
旅行,写作,编程
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
团队中“技术大拿”并非越多越好
团队中“技术大拿”并非越多越好
程序员必看的十大电影
程序员必看的十大电影
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
60个开发者不容错过的免费资源库
60个开发者不容错过的免费资源库
“懒”出效率是程序员的美德
“懒”出效率是程序员的美德
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
程序员周末都喜欢做什么?
程序员周末都喜欢做什么?
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
一个程序员的时间管理
一个程序员的时间管理
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
总结2014中国互联网十大段子
总结2014中国互联网十大段子
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
10个调试和排错的小建议
10个调试和排错的小建议
程序猿的崛起——Growth Hacker
程序猿的崛起——Growth Hacker
为什么程序员都是夜猫子
为什么程序员都是夜猫子
那些性感的让人尖叫的程序员
那些性感的让人尖叫的程序员
聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
2013年美国开发者薪资调查报告
2013年美国开发者薪资调查报告
程序员应该关注的一些事儿
程序员应该关注的一些事儿
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
代码女神横空出世
代码女神横空出世
老程序员的下场
老程序员的下场
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
做程序猿的老婆应该注意的一些事情
做程序猿的老婆应该注意的一些事情
程序员都该阅读的书
程序员都该阅读的书
5款最佳正则表达式编辑调试器
5款最佳正则表达式编辑调试器
写给自己也写给你 自己到底该何去何从
写给自己也写给你 自己到底该何去何从
“肮脏的”IT工作排行榜
“肮脏的”IT工作排行榜
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有