对速度没区别,你用Import也只是告诉编译器可以到哪些地方去找类,又不是把那些类复制到你目前的这个类中,如果用的多的话,当然 Import XXX.* 方便了,对吧?

解决方案 »

  1.   

    其实两个都一样的
    import java.util.*;
    只是方便了编程者,在编译时jvm会自动加载所用到的类,并不会加载该包中所有的类,自动
    import java.util.ArrayList;
    import java.util.Iterator;
    等于你告诉编译器应当加载那些类,手动
    速度方面没太大差异,空间方面没有区别的!!!
      

  2.   

    稍微有点区别
    比如你写:
    import java.sql.*;
    import java.util.*;
    在写程序用到Date()的时候就要写清是sql包的Date()还是util包里面的Date(),如果不写编译器会报错,因为它不知道你要到哪个包的;
    但是如果你这样写:
    import java.sql.*;
    import java.util.Date;
    可以不指明哪个包,编译器会默认你用到的是util包里的Date()类
      

  3.   

    如jimmyvk(J仔)所说,遇到上述情况,建议用第二种
      

  4.   

    同意郭外城的说法。import *并不是全导入的,编译器会自动加载需要的类。
    第二种做法有两个原因:
    1 为了不混淆有些同名类,比如Data类,就不止一个。
    2 减少编译器搜索时间。在空间是没有分别的。
      

  5.   

    haha
    xbj456(不行,又得加班..#%@*) 说得挺好的。。
      

  6.   

    第二种代码可读性强
    执行效率没有区别
    各位可以试试
    import java.util.*;
    public class a{
      ArrayList aa;
    }

    import java.util.ArrayList;
    public class a{
      ArrayList aa;
    }
    编译后的.class文件是完全一样的
      

  7.   

    有一定的区别
    import java.a.*;是import java.a.*中所有的public类 注意是public