我在学校上课的时候,老师告诉我,明确地引入一个包中的类比引入整个包的效率要高;可是今天我看那个 V512 的视频教程时,老师说两个效率一样,请教高手:到底谁是对的呢?视频教程里的老师有过做项目的经验,我相信他说的是正确的.可是我不知道为什么.引入一个包难道不是要一个个的查找吗?怎么会不影响效率呢?
请有实际开发经验的大侠们指教一下,谢谢了!

解决方案 »

  1.   

    只要你永远记着,import语句中不要出现*就行了,我上一家公司,只要import出现星,就罚款,一个星50RMB
      

  2.   

    效率是一样的。不过明确性的导入,这样在修改bug时候,和维护的时候能更加清晰。
      

  3.   

    效率差别应该可以忽略不计了Java是按需加载 没用到的类就不会加载
      

  4.   

    小项目相差不大的,基本没相差
    大项目呢,也基本没相差
    但是对于写程序的人来说
    java.utl.Date
    java.sql.Date
    都是Date
    你写成
    java.util.*
    java.sql.*
    这个时候你再new一个Date
    他会报错的会要求你明确指定用的是那一个
    所以最好明确引用
      

  5.   

    效率和内存占用肯定要差一些不过现在的IDE都提供有优化import的功能,比如Eclipse可以使用Source菜单-Organize Imports实现把×转换为对类的引用
      

  6.   

    按照编码规范来说,是要明确引用的。
    我们公司也有规定,具体到每个引用的Class,不能出现*。
    不过没有罚款一说,呵呵。
    效率上,据前辈说,大项目会有影响。
      

  7.   

    我认为,用*或指明类会影响编译效率,但不影响运行效率,编译后的java字节码文件中,应该已经知道了是哪一个包中的哪一个类,所以不存在效率问题。
      

  8.   

    没有那么严重吧!50RMB呀,可真是不能小写呀,对于3楼的说法,也同意呀,如果想看自己所使用的原代码,确实不错呀!
    我还没真的没有测过,但根据java的运行步骤来看,是要消费时间的!你多加一条信息,如同for的行循环,多增加一次呀!就是这样的呀!
      

  9.   

    没有任何运行效率差别,那是一些自以为是的家伙们规定的。
    这个会影响编译速度,但
    1 目前的机器速度可以忽略这个
    2 你书写明确的类所花费的时间将高于编译花费的时间
    3 许多编辑器,(Eclipse)可以自动替你完成
    4 我们的项目还没有大到需要XXXX个类包的时候
      

  10.   

    我倒是基本不自己导入包,都是等着eclipse提示错误后双击选择一下
      

  11.   

    个人习惯,就是实现自己手动的写 import 导包,这样有好处,第一是你的类在加载运行以后,不需要加载你根本用不到的class,第二,你这么写,能强化你对自己的代码理解。
      

  12.   

    透彻,import 这个关键词太迷惑人,using 要更准确些。
      

  13.   

    我就知道这样的
    java.utl.Date 
    java.sql.Date 
    确实不能用*,所以我就遇到这样的时候才去注意,平时都用*的,
    看来着习惯也要改了。谢谢..