⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 00000008.htm

📁 水木清华BBS
💻 HTM
📖 第 1 页 / 共 2 页
字号:
&nbsp;&nbsp;&nbsp;&nbsp;Java内存模型是提高程序可靠性最重要手段。Java不支持指针,这杜&nbsp;<BR>绝了内存的非法访问。Java自动的无用单元收集防止了内存丢失等动态内&nbsp;<BR>存分配所导致的问题。Java解释器运行时也实施检查,可以发现数组和字&nbsp;<BR>符串访问的越界。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;异常处理是Java保证程序健壮性的另一重要手段。一般认为,异常处&nbsp;<BR>理是成熟语言的标志。异常是一个信号,这样开发的程序很容易在多种平台上使用。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;可移植&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;平台无关性本身就提供了一种良好的可移植(Portable)。Java还提供&nbsp;<BR>了实现无关性(no&nbsp;implementation&nbsp;dependent),例如:&nbsp;Java中的原始数据类型&nbsp;<BR>的长度在任何平台上都一样。Java环境本身对硬件平台和操作系统也是可&nbsp;<BR>移植的。Java的编译器是用Java写的,Java的运行系统是用ANSI&nbsp;C写的。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;高性能&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;Java是一个解释型语言。众所周知,解释型语言除不可能达到编译型&nbsp;<BR>语言的速度外,其它性能(例如:可根据运行的上下文和当前值决定执行&nbsp;<BR>走向等)并不逊色于编译型语言。实际上,Java程序平均要比C慢20倍。&nbsp;<BR>为了解决高性能(High-performance)问题,Java的设计者们正在开发&nbsp;<BR>“Just&nbsp;in&nbsp;time”编译器,这种编译器可以在运行时把Java的字节代码翻译&nbsp;<BR>成特定CPU的机器码。SUN申称转化成机器码的字节代码在性能上接近&nbsp;<BR>于C或C++。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;多线程&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;Java是一个多线程(Multithreaded)语言,它可以同时运行多个线程处&nbsp;<BR>理多个任务。多线程技术可以提高图形用户界面的交互性能。使用C或C++&nbsp;<BR>开发多线程应用程序往往是令人头痛的。首要的困难是要保证多个例程可&nbsp;<BR>被若干并发线程运行。如果一个例程改变了状态变量的值,那么一次只可&nbsp;<BR>能有一个线程执行。用C和C++编写多线程应用程序,需要程序员负责例&nbsp;<BR>程的锁定与释放。这种显式地控制锁的方式一方面繁琐,另一方面又极易&nbsp;<BR>产生死锁。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;Java提供了语言内置的多线程控制,从而大大简化了多线程应用程序&nbsp;<BR>的开发。Java的Java.lang包提供了一个类Thread,由它负责启动一个线&nbsp;<BR>程,运行一个线程,终止一个线程,检查线程状态。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;Java的线程支持还包括一组同步原语。罩网络编程。包括套接字(soc&nbsp;<BR>ket),Internet地址,网&nbsp;<BR>络数据包,统一资源定位URL(Uniform&nbsp;Resource&nbsp;Locator)等。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;java.util。由一些通用的数据结构工具类组成,包括目录树、hash表、&nbsp;<BR>日期、栈、位集、字符串等。虽然这个包没有某些商品C++库覆盖面广,&nbsp;<BR>但可以胜任大多数网络应用程序的开发。&nbsp;<BR>3&nbsp;&nbsp;运行动的无用单元收集,程序无需显示释放占有的空间,无用单元自动回&nbsp;<BR>收的算法依赖于虚机器最终实现的硬件环境。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;Java虚机器的方法区是编译后的代码区域,它包括方法代码、符号表&nbsp;<BR>符等。&nbsp;<BR>4&nbsp;Java带来的影响&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;Java作为语言,在Internet上已是灸手可热,大有“听取蛙声一片”的&nbsp;<BR>气势。虽然新闻界的报导有些言过其辞,但勿庸置疑的是,Java作为软件&nbsp;<BR>开发的一种革命性的技术,其地位已被确立,&nbsp;这表现在以下几个方面:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;(1)&nbsp;计算机界的许多大公司已经购买了Java的许可证,包括IBM,&nbsp;<BR>Apple,DEC,Adobe,Silicon&nbsp;Graphics,HP,Oracle,Toshiba,&nbsp;<BR>Netscape以及最不情愿的Microsoft。Microsoft已在其Web浏览器&nbsp;<BR>Explorer3.0版中增加了对Java的支持。这一点说明,Java已得到了工业界&nbsp;<BR>的认可。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;(2)&nbsp;众多的软件开发商开始开发支持Java的软件产品。例如:Borland&nbsp;<BR>公司正在开发的基于Java的快速应用程序开发环境Latte,预计产品会在&nbsp;<BR>1996年中期发布。Borland公司的这一举措,推动了定的硬件平台,操作&nbsp;<BR>系统以及网络环境,软&nbsp;<BR>件的可移植性差,软件之间的通讯基本上限于数据通讯,无法进行代码的&nbsp;<BR>交换。随着Internet的发展,以网络为中心的计算普及,客观上,需要一种&nbsp;<BR>独立于平台的,代码可移动的计算技术,Java恰恰填补这一空白,这把&nbsp;<BR>Wintel垄断的软硬件市场打开了一个巨大的缺口,引发了一场软件开发的&nbsp;<BR>革命。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;我们可以设想未来的计算方式,每个HomePage的实质是一个多媒体&nbsp;<BR>应用程序,这些程序用Java来开发。Java应用程序运行在异质的机器、异&nbsp;<BR>质的操作系统之上,甚至于电冰箱,烤面包箱,防盗电子设备之中,用Internet&nbsp;<BR>把所有的电子设备连接起来,通过T发商也会大幅度降低销售成本。软件&nbsp;<BR>的销售将变成类似杂志订阅活动。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;对应用软件开发的影响&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;以前的应用软件开发商,为了使应用软件通用,通常要维护若干个操&nbsp;<BR>作系统的版本,如:DOS的,Windows3.1的,Windows&nbsp;95的,Solari2.0&nbsp;<BR>的等等,这是一个很大的开销。采用Java后,这些开销会大幅度削减,&nbsp;<BR>保证正确的数据访问,接受用户对数据的&nbsp;<BR>修改。有关OpenDoc的基本技术和方法是美国加州构件集成实验室&nbsp;<BR>(Component&nbsp;Integration&nbsp;Labs)完成。商品化的产品主要由Apple,IBM开发。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;Java作为分布式对象技术远比OpenDoc和OCX要简单得多,关键是&nbsp;<BR>在于Java提供一代码的可移动性和平台无关性。胜人一筹之处在于,网络&nbsp;<BR>信息交换可以是数据信息,也可以是程序实体,是一项最有前途的分布式&nbsp;<BR>对象技术。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;Java连同Internet,WWW改变应用软件的开发和使用方式,一切都&nbsp;<BR>要围绕着网络,围绕着平台无关。Word、Excel等传统的信息处理工具都&nbsp;<BR>必然走向萎缩,因为它们是单机时代的产物。信息的价值在于使用和共享,&nbsp;<BR>Internet和Web是信息的使用和共享最快捷、最便宜的方式,Word将演化&nbsp;<BR>成为Web写作工具,Excel则将演化成Web上的电子表格。&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>--&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;<BR>^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;^_^&nbsp;[s[4;65HO[3;66HO[3;67HO[3;68HO[4;69HO[5;69HO[6;68HO[7;67HO[8;65HO[7;63HO[6;62HO[5;61HO[4;61HO[3;62HO[3;63HO[3;64HO[u&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Welcome&nbsp;EveryOne!&nbsp;<BR>&nbsp;<BR>※&nbsp;修改:·FrankCH&nbsp;於&nbsp;Jul&nbsp;27&nbsp;11:55:57&nbsp;修改本文·[FROM:&nbsp;&nbsp;166.111.74.158]&nbsp;<BR>※&nbsp;来源:·BBS&nbsp;水木清华站&nbsp;bbs.net.tsinghua.edu.cn·[FROM:&nbsp;166.111.74.158]&nbsp;<BR><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -