当前位置: 技术问答>java相关
关于import 语句的困惑
来源: 互联网 发布时间:2015-01-01
本文导语: 如下的语句: import java.net.URL; import java.net.URLConnection; import java.net.URLEncoder; import java.net.UnknownHostException; import java.net.MalformedURLException; 可否用一句"import java.net.*;"代替?这样会否导致程序编译后较大? 象上面用这...
如下的语句:
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;
import java.net.UnknownHostException;
import java.net.MalformedURLException;
可否用一句"import java.net.*;"代替?这样会否导致程序编译后较大?
象上面用这么多句“import”语句的好处在哪里?
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;
import java.net.UnknownHostException;
import java.net.MalformedURLException;
可否用一句"import java.net.*;"代替?这样会否导致程序编译后较大?
象上面用这么多句“import”语句的好处在哪里?
|
其实主要的好处在于提醒自已所用的类来自于哪里,这个做法在只使用标准Java的包时比较无聊,但如果你要引入自已定义的包中的类时就可以给别人以及自已一个更明显的类的位置的说明,这样子别人或自已想读懂程序也方便一些。
对于编译不能说毫无影响,一定会有一点点速度上的提高,至少编译器不用按你引入的顺序一个包一个包的去匹配了,不过影响微不足道。另外,肯定不会增加编译后的文件大小。
另maxiams说的对,反编译出来的正是如此。
对于编译不能说毫无影响,一定会有一点点速度上的提高,至少编译器不用按你引入的顺序一个包一个包的去匹配了,不过影响微不足道。另外,肯定不会增加编译后的文件大小。
另maxiams说的对,反编译出来的正是如此。
|
假如在程序中只用到java.net.URL,那么在编译时其它的没用到的类都会略去。
你反编译一下就明白了。
你反编译一下就明白了。
|
可以,不会(只是编译时时间多用一点)
|
有一点好像要注意,它的.*是指的该层下的所有类,如果有AAA.BBB.CCC;AAA.BBB.CCC.DDD;
import AAA.BBB.* 只会导入前者,后者是不会导入的;
import AAA.BBB.* 只会导入前者,后者是不会导入的;