[英]Could extra imports in Java slow down code loading time?
在Java代碼中添加更多import語句是否有可能減慢將類加載到JVM所需的時間?
不,導入僅在編譯中用於查找類引用。 添加未使用的導入,它們不會執行任何操作。 換一種方式:
import java.util.*;
只是意味着您可以編寫:
Map map = new HashMap();
代替:
java.util.Map map = new java.util.HashMap();
這就是全部。
不會。導入純粹是編譯時的構造...語法糖。
導入告訴Java編譯器如何將源代碼中的標識符映射到完全限定的類名。 但是,如果源代碼不使用導入的類,則字節碼文件將沒有對其的引用。 因此,冗余導入不會(也不能)影響類的加載時間。
導入會影響編譯時間,但不會影響加載時間或運行時間。 基本上,如果您導入不需要的類(通常在需要顯式導入時使用通配符導入),則可以稍微降低編譯器的速度。
但是,除非您正在編譯一個龐大的系統,否則即使達到這種效果通常也是微不足道的。
不要把“導入”和“類加載”混為一談。 import語句不會導致任何代碼被加載到內存中。 這只是一種方便,允許您使用它們的短名稱而不是鍵入完整的類名來引用類(例如,“ Connection”而不是“ java.sql.Connection”)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.