Zhejiang University of Science and Technology我们为什么要用Java多线程的Java语言的一个重要特性就是在语言级支持多线程的程序设计。多线程就好像我们做一张桌子,如果你一个人完成这张桌子一就好像单线程,那么你需要先做桌面,做完桌面后再做4个桌子腿,如果现在有5个人来做桌子一在程序中开辟5个线程,其中1个人做桌面,另外4个人分别做4个桌子腿,那么这两种方式效率的高低,相信大家都能区分出来
Zhejiang University of Science and Technology 我们为什么要用Java 多线程的 Java语言的一个重要特性就是在语言级支 持多线程的程序设计。多线程就好像我们做一 张桌子,如果你一个人完成这张桌子—就好像 单线程,那么你需要先做桌面,做完桌面后, 再做4个桌子腿,如果现在有5个人来做桌子— 在程序中开辟5个线程,其中1个人做桌面,另 外4个人分别做4个桌子腿,那么这两种方式效 率的高低,相信大家都能区分出来
Zhejiang University of Scienceand Technology我们为什么要用Java·动态的Java的动态特性是其面向对象设计方法的扩展。它允许程序动态地装入运行过程中所需要的类,这是我们采用C++语言进行面向对象程序设计所无法实现的。在C++程序设计过程中,每当在类中增加一个实例变量或一个成员函数后,引用该类的所有子类都必须重新编译,否则将导致程序崩溃。Java从以下几个方面采取措施来解决这个问题。Java编译器不是将对实例变量和成员函数的引用编译为数值引用,而是将符号引用信息在字节码中保存下来,传递给解释器,再由解释器在完成动态连接类后,将符号引用信息转换为数值偏移量。一个在存储器中生成的对象不在编译过程中决定,而是延迟到运行时由解释器确定。这样,对类中的变量和方法进行更新时就不至于影响现存的代码。解释执行字节码时,这种符号信息的查找和转换过程仅在一个新的名字出现时才进行一次,随后代码便可以全速执行。在运行时确定引用的好处是可以使用已被更新的类,而不必担心会影响原有的代码。如果程序连接了网络中另一系统中的某一类,该类的所有者也可以自由地对该类进行更新,而不会使任何引用该类的程序崩溃。Java还简化了使用一个升级的或全新协议的方法。如果你的系统运行Java程序时遇到了不知怎样处理的程序,Java能自动下载你所需要的功能程序
Zhejiang University of Science and Technology 我们为什么要用Java 动态的 Java的动态特性是其面向对象设计方法的扩展。它允许程序动态地装 入运行过程中所需要的类,这是我们采用C++语言进行面向对象程序设计所 无法实现的。在C++程序设计过程中,每当在类中增加一个实例变量或一个 成员函数后, 引用该类的所有子类都必须重新编译,否则将导致程序崩溃。 Java从以下几个方面采取措施来解决这个问题。Java编译器不是将对实例变 量和成员函数的引用编译为数值引用,而是将符号引用信息在字节码中保存 下来,传递给解释器,再由解释器在完成动态连接类后,将符号引用信息转 换为数值偏移量。一个在存储器中生成的对象不在编译过程中决定,而是延 迟到运行时由解释器确定。这样,对类中的变量和方法进行更新时就不至于 影响现存的代码。 解释执行字节码时,这种符号信息的查找和转换过程仅在 一个新的名字出现时才进行一次,随后代码便可以全速执行。在运行时确定 引用的好处是可以使用已被更新的类,而不必担心会影响原有的代码。如果 程序连接了网络中另一系统中的某一类,该类的所有者也可以自由地对该类 进行更新,而不会使任何引用该类的程序崩溃。Java还简化了使用一个升级 的或全新协议的方法。如果你的系统运行Java程序时遇到了不知怎样处理的 程序,Java能自动下载你所需要的功能程序