为什么说JAVA是跨平台的?
来源:互联网 发布:怎么在淘宝买二手表 编辑:程序博客网 时间:2024/04/29 21:42
在java之前,跨平台是很痛苦的事情,主要是因为所有对于系统的调用,在不同的操作系统下结果都不一样,简单的来说,int的长度在不同操作系统里面就不一样,甚至于连字节排列的顺序都不同。调用同一个函数返回的格式也不同,因此,写程序的人自己要对不同的系统非常了解,如果真的需要对不同操作系统进行兼容,要在程序里面写很多if,编译的时候要先判断使用的操作系统,创造很多环境变量才能编译,而且编译好的二进制可执行文件只能在本系统上运行。如果你写的是个功能库供别人调用的,那么光对操作系统的判断就占了代码的绝大部分,而且,还要你在不同平台下进行测试,这可是个艰苦卓绝的工作。建议你有空可以看看apache httpd服务器的源代码就知道了。
自从有了java之后,就把操作系统兼容的工作丢给了jvm了,对于程序员来说就再也不要关心int有几位,还有高位在前还是地位在前的问题了,你只要用java的代码把你程序的逻辑实现出来就可以了,这些兼容的问题就交给jvm去处理吧。这样,如果你写一个程序交付给客户使用,如果客户的环境是运行AIX的,你就不需要在本地也装一个AIX来开发和运行,你可以在windows上完成所有的开发,然后把编译好的文件交给客户就可以了,以后有别的客户需要在Solaris上运行这个程序,你都不用修改,直接拿过去就可以运行,这难道不是一种方便吗?只有被跨平台开发折磨过的人才能更深得体会到用java开发跨平台应用的优势。
自从有了java之后,就把操作系统兼容的工作丢给了jvm了,对于程序员来说就再也不要关心int有几位,还有高位在前还是地位在前的问题了,你只要用java的代码把你程序的逻辑实现出来就可以了,这些兼容的问题就交给jvm去处理吧。这样,如果你写一个程序交付给客户使用,如果客户的环境是运行AIX的,你就不需要在本地也装一个AIX来开发和运行,你可以在windows上完成所有的开发,然后把编译好的文件交给客户就可以了,以后有别的客户需要在Solaris上运行这个程序,你都不用修改,直接拿过去就可以运行,这难道不是一种方便吗?只有被跨平台开发折磨过的人才能更深得体会到用java开发跨平台应用的优势。
- 为什么说JAVA是跨平台的?
- 为什么说Java语言是平台无关的
- 为什么说Java的String对象是不可变的
- 为什么说java的String对象是不可变的
- java为什么是跨平台语言?
- 为什么说Java是一种解释性语言
- 为什么说java是面向对象呢?
- 怎么理解,java语言是跨平台的?即什么是跨平台?C也说自己是跨平台的,怎么理解?
- 为什么说网络实名是不得人心的举动
- 为什么说编程是独一无二的
- 为什么说计算机语言是相通的?
- 为什么说cache是persist的特例?
- 为什么说ArrayList是线程不安全的?
- 为什么说ArrayList是线程不安全的?
- 为什么说FPGA是硬件并行的?
- 为什么说python的多线程是鸡肋?
- 为什么说String 是不可变的?
- 为什么说Tcl是最好的语言?
- BNU Cards 概率dp
- 线程状态切换 退出-暂停-继续
- Adblock去广告
- keil下移植μc/os Ⅱ
- JSP基础语法之六:request对象,1用getParameterNames取得checkbox全部值,2解决getParameter中文乱码
- 为什么说JAVA是跨平台的?
- QML调用Qt_CPP中的变量
- JNI代码示例
- 用Jetty快速开发J2EE应用
- MFC设置按钮不可用
- juint测试之类工厂重构 mock objects测试
- Visual AssistX refactor功能初探
- BT5R3-GNOME-64中安装Flash插件……
- poj 2255 Tree Recovery 树的遍历 简单string用法