because Java programs are dynamically linked and dynamically extensible, class files can be downloaded as needed. This feature helps a Java application manage the time it takes to download class files across a network, so the end-userís wait time can be kept to a minimum. 就是加下划线的这句,感觉好像没有什么因为关系啊 为什么动态链接就能让用户的等等时间变短呢?
自然比下载三个速度要快,时间就短了
既然是dynamically linked,那么应该有好多类是在运行时候才能确定,这样问题就来了,程序一开始又不能确定它就要用到这个类,当在运行时发现要用到一个类时,去download,假如网速不是很好不是会等很长时间了?再者假如来个连接中断那不就产生大问题了,程序只执行了一半,这怕是程序开发者最不喜欢看到的情况之一。
(这样的话,还不如一开始就下载好所有的类,一起来执行比较方便)我到不是觉得我上面说得会有道理,而是,假如不是我说的这样的话,会是怎么样?
I think it's not a big problem to dynamical downloading...
1. 如果所有需要的类都是独立的,之间没有任何的继承和引用关系,那么确实应该是比较糟糕的,但是,事实上大部分的类都是有引用和继承关系的,所以,dynamically linked 应该是根据这种关联关系来进行load。
2. 关于网络的问题,既然我们选择了通过网络来load class,那么在开发的时候就应该考虑到这个因素的影响,通过可以控制的机制给end user一些可以接受的处理方式。这个可以找个javaws的部署应用来测试一下。