Java的跨平台就是一句谎言。


======================================================
注:本文源代码点此下载
======================================================

楼主对技术的理解还很粗浅,对技术之外的东西就更看不到理解了,说得太重了,但真的认为如此。

楼主应该知道c是可以跨平台的吧,c编译器在各个平台都是有的,缺的是调用平台api上的差异,这一差异导致了c编写的代码很难在各平台上得到复用,一些细节问题,比如字节序,指针,64位问题,都是可以解决的,但都需要解决,你才可能勉强写出跨平台的程序,那么这就跨平台了吗?非也,手机和微机商店差异更大,更加难以复用已有的代码。

java能跨平台吗?java本身就是一个平台,它并没有把平台的差异告诉给你,或者并不希望你借此进行区分平台的编写,它的思路是这样的,尽量复用代码。它同样需要区分手机和微机,不是它想区分,是现在性能低下必须区分,c倒是不用区分看看,哪种语言不需要在手机系统间进行区分才能编写代码,你必须要保证性能啊。这里网页或是javascript之类的会有比较广泛的兼容性,不过它们本来速度就慢点,云计算方式的就更不属于我们讨论的范畴。

c#比java强大吗?在windows下毫无疑问的,在linux下,起码能作到紧追了吧,c#也确实是门不断进取中的语言,但这进取的优势之中,也正因为它还有改进的机会,它能在更多人使用之前进化到适合甚至领先的程度,可是不好意思,java已经很多人用了,不能随便改的。

java泛型不如c#,但老赵那篇文章的后面大家讨论的已经够多了,对其优劣都作出了评价,为什么不换一种思维来看待呢,你不觉得正是因为你在追求用c#的泛型的使用方式来使用java泛型,才导致了你觉得它很糟糕,你有没有试着用java泛型的使用方式来使用,java中拆箱装箱的概念只用在基础数据类型,你问过一个基本对java5有了解的人就知道如何规避了,这并不是一个性能就非得差下去的问题,至于泛型的类型被擦除并在使用时被重新类型转换,这部分的效率只相当于一个指针的强制类型转换,并且是底层优化的,只能说在考虑兼容性的前提下把能够作的优化作到极限了,在企业级应用中大规模使用泛型还很少,因为代码都是之前已经写好的,很少改动,而且一般都是采用绕过泛型实现的类继承结构,再加上服务器的更新换代和java平台性能改进的提升,迁移到c#的需求其实不大,大应用往往不愿意去折腾,小应用没能力去折腾,新应用去折腾前是需要考虑成本因素的,老实说现在做java的人工资不高,这点也该考虑进去。

扯远了,java运行慢我一直以为他说的是全局化的各种情况,针对泛型来谈其实以偏概全了。


======================================================
在最后,我邀请大家参加新浪APP,就是新浪免费送大家的一个空间,支持PHP+MySql,免费二级域名,免费域名绑定 这个是我邀请的地址,您通过这个链接注册即为我的好友,并获赠云豆500个,价值5元哦!短网址是http://t.cn/SXOiLh我创建的小站每天访客已经达到2000+了,每天挂广告赚50+元哦,呵呵,饭钱不愁了,\(^o^)/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值