一个比较基础的问题

nasco 2002-02-09 08:11:22
在下没有学过java程序设计,但是对一些比较底层的问题比较有兴趣。望高手指点

Java的程序编译成VM对应的代码,按照有的说法,实际上SUN设计了Java语言的同时也设计了一台虚拟的计算机,VM就是该计算机的一个模拟器。那么按照这种说法,VM实现的时候是否有它的操作系统?

Java程序运行时与其他进程的通讯如何完成(比如win32下)?
Java没有提供指针,是否考虑因素之一就是实现的时候要用软件做边界检查,但这将导致额外的性能损耗?

同时请问Java本身设计上的问题在什么书籍或者资料中可以找到?
...全文
5 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
remote_roamer 2002-02-10
vm不是操作系统,只是解释和执行class文件.所谓跨平台其实是不同平台上用不同的vm而已.不过可以执其他平台上生成的class而已.所以说vm是有平台限制的.但是class没有平台限制而已.因此不同系统上会有不同的java run time环境.
回复
Leometeor 2002-02-10
边界检查肯定会有额外的性能损耗,不过编程的人身体的损耗就少了,:)
回复
hanson_yi 2002-02-10
你玩过模拟机器?
比如:不同的平台上都可以有ps模拟器,VM的作用也类似,它只是在不同平台上提供了不同的库,在windows下它提供了一些dll文件,在linux下它提供了一些so文件。它只是让java class有一个统一的运行环境。
回复
litthree 2002-02-09
调用Runtime.getRuntime().exec()方法就可,我也是刚知道不久
回复
nasco 2002-02-09
songhtao(三十年孤独) 能否详细叙述?
回复
icy_csdn 2002-02-09
Java有指针,即每个对象的句柄其实就是一个指针,只不过Java对指针的限制非常严格!
回复
我不懂电脑 2002-02-09
VM实现的时候没有它的操作系统,VM对应的代码是一个中间代码。
回复
发帖
非技术区
创建于2007-09-28

2.3w+

社区成员

Java 非技术区
申请成为版主
帖子事件
创建了帖子
2002-02-09 08:11
社区公告
暂无公告