簡體   English   中英

Java中的額外導入是否可以減慢代碼加載時間?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM