当前位置: 技术问答>java相关
JAVA的安全性究竟怎样体现出来?
来源: 互联网 发布时间:2015-08-25
本文导语: 人们都说JAVA语言安全性好,请向JAVA新手说说清楚,它的安全性究竟怎样体现出来? 这里是指抗病毒方面的安全性。 | java的安全性主要体现在:下载到本地的java applet只限制在java运行环境中...
人们都说JAVA语言安全性好,请向JAVA新手说说清楚,它的安全性究竟怎样体现出来?
这里是指抗病毒方面的安全性。
这里是指抗病毒方面的安全性。
|
java的安全性主要体现在:下载到本地的java applet只限制在java运行环境中,而不允许它访问计算机的其他部分。
这是由于java编译器输出的并不是可执行代码,而是字节代码(bytecode),java的运行系统就是java虚拟机,每个java程序的运行都是在java虚拟机的控制之下。java虚拟机可以包含这个程序并且阻止它在系统外产生副作用。通过java语言中的适当限制增强了安全性。
这是由于java编译器输出的并不是可执行代码,而是字节代码(bytecode),java的运行系统就是java虚拟机,每个java程序的运行都是在java虚拟机的控制之下。java虚拟机可以包含这个程序并且阻止它在系统外产生副作用。通过java语言中的适当限制增强了安全性。
|
大家通常所说的java的安全性,主要还指它去掉了直接由程序员来操作内存,而由JVM来管理,避免内存忘记释放造成的问题。关于抗病毒方面,我想这不是什么语言具备的特点,因为病毒也是由语言编写出来的。是否抗病毒,主要是只架构设计上是否存在漏洞。如果从理论上考察,因该是程序遍历它可能遇到的各种情况,在每种情况下如果存在逻辑上的矛盾,即事实上会出现原先设计时不希望的结果,这都叫做程序的bug。病毒程序正好是利用了这一点。这因该跟语言没有关系。(这仅是我个人愚见,实质上我对病毒没有丝毫研究)
|
Java的安全模型被分为三个主要的防范区域: Byte-code验证器、 类装人器和安全管理器。
|
java安全性的另一个方面就是安全策略。JVM可以设置安全策略来给应用程序对系统资源的访问赋予相应的权限。
|
据说java的字节代码只要被病毒改动哪怕一个字节,就会拒绝执行