为什么说Java比.net安全

地球人都知道Window操作系统没有linux安全,因为Java跨平台性优于.Net所以在这方面Java比.net安全。除了以上这点还有其它的吗还有我想问为什么说.net... 地球人都知道Window操作系统没有linux安全,因为Java跨平台性优于.Net所以在这方面Java比.net安全。除了以上这点还有其它的吗还有我想问为什么说.net适合开发中小型程序,而java适合开发大型程序呢请举例说明 展开
 我来答
匿名用户
2013-09-10
展开全部
“地球人都知道Window操作系统没有linux安全”这个我不反对,但这跟Java和.NET扯不上关系,因为Linux是C误言开发的。
“因为Java跨平台性优于.Net,所以在这方面Java比.net安全。“,这句话并不准确,说到跨平台,Java是通过JVM的进行机制实现的,而.NET也有.NET Framework,且已经有4.0版本了,.NET Framework也是采用中间语言,内部支持C++.NET/C#.NET/VB.NET/J#.NET,从理论上讲只要在Linux开发出支持的.NET Framework,.NET语言也是可以实现跨平台的。。。但微软有自已的系统当然不会这么做。
很明显,Java所采用的中间字节及解释执行以及跨平台的技术比.NET成熟,但并不是因为Java的Java跨平台性。
匿名用户
2013-09-10
展开全部
在技术上,我的感觉是两者互有千秋,.NET在Anders的带领下发展很快,我也是Anders的一个粉丝,成为他那样的高手是我梦寐以求的愿望(我也知道是不可能的)。但Java领域中牛人也是倍出。现在在Java和.NET最大的区别也许就是一个可以跨各种操作系统平台,一个只能在各种MS的平台上互相移植。微软肯定有能力跨各种操作平台,只不过是为了他的WINDOWS着想,所以不愿意也不敢跨这些平台就是了,他可不希望自己把Linux给带来一片繁荣。Java的运行速度上面,可以说在Windows平台的桌面软件上速度无法和.NET比,在JDK1.4中的SWING的速度我是领教够了,SWT稍微好一点,不过跟用MS的C#作出来的C/S软件的客户端比,还是差了不少,这点我们要实事求是。不过只要脱离了客户端,在做Web Service上,Java的优异性能表现就比较明显了,ASP.NET我没有用过不清楚,不过我觉得应该也很好。
在开发周期上,肯定是.NET要优于Java,MS的工具一向就是把人培养为傻瓜的那种类型,在Visual Studio中拖拖,很快一个画面就Coding完毕了,如果习惯于这样开发模式的程序员去写J2EE的程序,就会感到极大的痛苦,在Java开发中,个人开发水平还是非常需要的(不否认,程序员中复制代码再进行修改的也不是少数)。不过,傻瓜型快速开发也不是什么坏事,可以缩短开发周期,老板会比较开心,但是对程序员自身的发展来看,是很不利的。很有可能你做了几年程序员,还处于拖放空间的那种层次。但Java的这种开发方式造成了对开发人员要求比较高,对于刚入行的开发人员来说,很容易就极大打击开发人员的自信心和积极性,带来不好的一面。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友5ba75e4
2016-01-11 · TA获得超过2045个赞
知道大有可为答主
回答量:1775
采纳率:60%
帮助的人:958万
展开全部

由一下几点(如有异议请提出,不足请补充):

  1. 技术成熟度,由于java是开源的,所以在他不成熟的时候会有很多很多的专家,黑客(正面的也好,反面的也罢)来找茬,这个阶段的java就是一个大漏勺,但随着漏洞一个一个被提出一个一个被修补java的完善度越来越高,现在的java的可靠性不是.NET可比的。java有漏洞自会有大神提出解决方案,比如最近的反序列,虽然官方没有更新,但民间已有解决方案。如果发生在.NET上,.net是不开源的,发现小漏洞微软会说,放一放研究下(N年后更新),大漏洞紧急补丁(也可能不补),在发现漏洞到补丁出现的缓冲期内这个漏洞一直存在,被攻击的风险相当的高。另外由于同平台还有一些王道软件(office)和相关自加软件,这些软件平台说不定会爆出一个小漏洞然后关联提权什么的,牵一发而动全身。

  2. 搭载平台。据说.net有了Mono平台可以再linux上搭建环境,很多.net工程师说终于不用面对 瘟到死 系统了。但为时已晚,而且在linux上的运行效率也不如自加平台效率来的高。就安全说事,这个算平局。

  3. 代码编写。java有很多开源框架,解决不同的问题,同样的.net也有,但.net中很大一部分是参考java源码写的,也有部分.net大神写的。这方面,由于java人数众多(国内外都算)略胜一筹。

  4. java遇到解决不了的难题(高端的问题),可以去反编译源码查看问题所在,找到解决方案,就算自己不会可以到开源社区去找热心的大大(虽然遇到和中奖概率差不多,起码是有)。.net遇到这问题,微软爹爹求助!然后看爹理不理你。


总结上述:中低端开发,其实大家都差不多,半斤八两。可能就是系统平台java稍微好点(毕竟相信大部分.net还是在window上的)。高端的java有优势,开源可定制化是战胜.net的关键。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1997排长
高粉答主

2016-01-11 · 说的都是干货,快来关注
知道大有可为答主
回答量:1.1万
采纳率:0%
帮助的人:772万
展开全部
从框架上说,.net里分.net Webform和.net MVC。这是两个截然不同的东西。

.net MVC和java ssh我感觉差不多。好坏仁者见仁智者见智,觉得.net MVC更方便一些,并且MVC的框架本身也开源了,也有很多不错的插件。
.net Webform就不一样了(当然现在.net中 Webform开发还是占据大多数),开发速度快,简单易学,好上手,跟开发客户端程序似的,中小型项目中用的挺多。
不过不建议使用.net Webform再开发了,拖控件之类的开发模式对web发展,还是自身发展有害无益。MVC用熟了也不慢(当然上手比较难),实在追求开发速度用ROR更快。

从语言上说,C#和java感觉也没什么区别。C#新版本有很多lambda,动态类型之类的新语言特性,还有大量的语法糖。
不过java可以跨平台,这点C#无能为力。

从社区上说,java毕竟一直开源,社区感觉还是要比.net更好一些。(ps:不要忽略社区的力量,不过Java自从被Oracle收购后。)

从就业上说,也差不多,分地区。Java貌似略好。
从面子上说,貌似java开发人员更有优越感,国内有看不起.net的现象。
以前有种说法,Java适合开发大项目,.net适合中小型项目。
最终观点,无论是语言还是框架只是一种工具,能完成项目的前提下,哪个成本最低用哪个。程序的设计思想都是一样的。

如果热爱技术的话,Web开发中ror(国外都快没落了,中国都还没火起来)、node.js(这个我感觉比较有前途)等新兴技术最好也能了解了解,虽然就业上可能费劲一些,多数都是外企要这类人才。不过这也是web技术发展的趋势。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-09-10
展开全部
java源代码编译后,还要经过虚拟机才能运行,sun公司提供不同平台的虚拟机,所以java可以跨平台 虚拟机封装了垃圾处理的机制,程序员不必处理内存垃圾,程序不会内存溢出,内存安全虚拟机过滤了一些恶意代码,在编译的时候可以通过,可能在运行的时候被虚拟机拦截,不能编写病毒软件 java是开源的语言,现在流行的框架有spring+struts+hibernate(ssh),基于这个框架,程序员可以开发出大型的b/s管理系统
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式