免费体验120秒视频_榴莲榴莲榴莲榴莲官网_2021国产麻豆剧果冻传媒入口_一二三四视频社区在线
軟件首頁 |  文章首頁
最新更新 軟件分類 設(shè)為首頁 加入收藏 聯(lián)系我們
當(dāng)前位置:首頁文章首頁 IT學(xué)院 Java

Java包導(dǎo)入機制的研究與解析

作者:東坡下載  來源:uzzf  發(fā)布時間:2010-10-14 12:03:04  點擊:

      java中有兩種包的導(dǎo)入機制,總結(jié)如下:

  單類型導(dǎo)入(single-type-import),例如import java.io.File;

  按需類型導(dǎo)入(type-import-on-demand),例如 import java.io.*;

  關(guān)于這兩種導(dǎo)入類型大家各有所愛,眾說紛紜。這里分析一下這兩種導(dǎo)入類型的大致工作原理供大家參考。

  單類型導(dǎo)入比較好理解,僅僅導(dǎo)入一個public類或者接口。而對于按需類型導(dǎo)入,有人誤解為導(dǎo)入一個包下的所有類,其實不然,看名字就知道,他只會按需導(dǎo)入,也就是說它并非導(dǎo)入整個包,而僅僅導(dǎo)入當(dāng)前類需要使用的類。

  既然如此是不是就可以放心的使用按需類型導(dǎo)入呢?非也,非也。因為單類型導(dǎo)入和按需類型導(dǎo)入對類文件的定位算法是不一樣的。java編譯器會從啟動目錄(bootstrap),擴展目錄(extension)和用戶類路徑下去定位需要導(dǎo)入的類,而這些目錄進僅僅是給出了類的頂層目錄。編譯器的類文件定位方法大致可以理解為如下公式:

  頂層路徑名 \ 包名 \ 文件名.class = 絕對路徑

  對于單類型導(dǎo)入很簡單,因為包明和文件名都已經(jīng)確定,所以可以一次性查找定位。

  對于按需類型導(dǎo)入則比較復(fù)雜,編譯器會把包名和文件名進行排列組合,然后對所有的可能性進行類文件查找定位。例如:
  package com;
  import java.io.*;
  import java.util.*;
  當(dāng)你的類文件中用到了File類,那么可能出現(xiàn)File類的地方如下

  File \\ File類屬于無名包,就是說File類沒有package語句,編譯器會首先搜索無名包

  com.File \\ File類屬于當(dāng)前包

  java.lang.File \\編譯器會自動導(dǎo)入java.lang包

  java.io.File

  java.util.File

  需要注意的地方就是,編譯器找到j(luò)ava.io.File類之后并不會停止下一步的尋找,而要把所有的可能性都查找完以確定是否有類導(dǎo)入沖突。假設(shè)此時的頂層路徑有三個,那么編譯器就會進行3*5=15次查找。

  注意:如果在查找完成后,編譯器發(fā)現(xiàn)了兩個同名的類,那么就會報錯。要刪除你不用的那個類,然后再編譯。

  了解以上原理之后,我們可以得出這樣的結(jié)論:按需類型導(dǎo)入是絕對不會降低Java代碼的執(zhí)行效率的,但會影響到Java代碼的編譯速度。

  查看JDK的源代碼就知道SUN的軟件工程師一般不會使用按需類型導(dǎo)入。因為使用單類型導(dǎo)入至少有以下兩點好處:

  1。提高編譯速度。

  2。避免命名沖突。(例如:當(dāng)你import java.awt.*;import java.util.*后,使用List的時候編譯器將會出編譯錯誤)

  當(dāng)然,使用單類型導(dǎo)入會使用你的import語句看起來很長。

文章評論

欄目導(dǎo)航

本類推薦文章

關(guān)于本站 | 網(wǎng)站幫助 | 廣告合作 | 下載聲明 | 友情連接 | 網(wǎng)站地圖
Copyright © 20098-2010 uzzf下載站. All Rights Reserved .
免费体验120秒视频_榴莲榴莲榴莲榴莲官网_2021国产麻豆剧果冻传媒入口_一二三四视频社区在线
主站蜘蛛池模板: 又黄又爽的视频免费看| 91嫩草私人成人亚洲影院| 国产精品一区久久| 国产精品久久久久久久网站| japanese国产高清麻豆| 久久精品这里热有精品2015| 波多野结衣中文字幕在线视频| 好男人资源在线播放看| 波多野结衣在线看片| 国产女人嗷嗷叫| 黑白高清在线观看| 日韩激情中文字幕一区二区| 国产精品色拉拉免费看| 狠狠躁夜夜躁av网站中文字幕| 一本加勒比HEZYO无码人妻 | 天天干天天干天天干天天干天天干| 日韩a在线观看免费观看| 国产精品综合一区二区| 国产精华av午夜在线观看| 欧美性极品hd高清视频| 黄色一级视频免费| 天天干天天做天天操| 岳在我胯下哭泣| 亚州无毛| 成人毛片视频免费网站观看| 4hu44四虎在线观看| 久久久久香蕉视频| 91视频久久久久| 国产91精品一区| aaa毛片视频免费观看| 又爽又黄无遮挡高清免费视频 | 日韩电影免费在线| a在线观看免费网址大全| 精品国产美女福利到在线不卡 | 一级毛片不卡片免费观看| sihu永久在线播放地址| 一区二区三区免费视频播放器| 99热在线免费观看| 亚洲精品网站在线观看不卡无广告| 啊灬啊灬别停啊灬用力啊免费| 久久99精品国产麻豆宅宅|