中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      Java中import的使用

      時間:2024-10-11 04:42:48 JAVA認證 我要投稿
      • 相關推薦

      Java中import的使用

        很多人以為原始碼 .java 文件中的 import 會讓編譯器把所 import 的程序通通寫到編譯好的 .class 檔案中,或是認為 import 跟 C/C++ 的 #include 相似,實際上,這是錯誤的觀念。

        讓我們先了解一下,Java 的 package 到底有何用處。

        其實,package 名稱就像是我們的姓,而 class 名稱就像是我們的名字。package 名稱有很多 . 的,就好像是復姓。比如說 java.lang.String,就是復姓 java.lang,名字為 String 的類別;java.io.InputStream 則是復姓

        java.io,名字為 InputStream 的類別。

        Java 會使用 package 這種機制的原因也非常明顯,就像我們取姓名一樣,光是一間學校的同一屆同學中,就有可能會出現不少同名的同學,如果不取姓的話,那學校在處理學生數據,或是同學彼此之間的稱呼,就會發生很大的困擾。相同的,全世界的 Java 類別數量,恐怕比臺灣人口還多,而且還不斷的在成長當中,如果類別不使用套件名稱,那在用到相同名稱的不同類別時,就會產生極大的困擾。幸運的是,Java 的套件名稱我們可以自己取,不像人的姓沒有太大的選擇 ( 所以有很多同名同姓的 ),如果依照 Sun 的規范來取套件名稱,那理論上不同人所取的套件名稱不會相同 ( 請參閱 “命名慣例”的相關文章 ),也就不會發生名稱沖突的情況。

        可是問題來了,因為很多套件的名稱非常的長,在寫程序時,會多打好多字,花費不少時間,比如說:

        java.io.InputStream is = java.lang.System.in;

        java.io.InputStreamReader isr= new java.io.InputStreamReader(is);

        java.io.BufferedReader br = new java.io.BufferedReader(isr);

        實在是不美觀又麻煩。于是,Sun 想了一個辦法,就是 import.

        這個 import 就是在程序一開頭的時候,先說明程序中會用到那些類別的

        簡稱,也就是只稱呼名字,不稱呼他的姓。首先,在檔案開頭寫:

        import java.lang.System;

        import java.io.InputStream;

        import java.io.InputStreamReader;

        import java.io.BufferedReader;

        這幾行說明了這四個姓名的類別,在程序中只用他的名字來稱呼,所以當程序中提到 System 就是指 java.lang.System,而 InputStream 就是指 java.io.InputStream,依此類推。于是原來的程序就變成:

        InputStream = System.in;

        InputStreamReader isr = new InputStreamReader(is);

        BufferedReader br = new BufferedReader(isr);

        這樣看起來是不是清爽多了呢?如果這些類別用的次數很多,那就更能體會到import 的好處了。可是這樣還是不夠,因為懶是人的天性,還是會有人覺得打太多 import 了也很浪費時間,于是 Sun 又提供了一個方法:

        import java.lang.*;

        import java.io.*;

        意思就是,等一下程序中提到的沒有姓名的類別,不是姓 java.lang,就是姓java.io,如果這兩個里面有同樣名字的類別,而不幸的你又只用名字稱呼這個類別,那編譯器仍然會跟你抱怨,因為它還是不知道你說的這個類別指那一

        個姓的類別。那可不可以再懶一點呢,只寫:

        import java.*;

        歷史告訴我們,人可以懶,但不能太懶,這樣是不行的。因為那些類別是姓 java.io 而不是姓 java.就像姓「諸葛」的人應該不會喜歡你稱他為「諸」先生吧。

        為甚么我一開始說 import 跟 #include 不同呢?因為 import 的功能到此為止,它不像 #include 一樣,會將檔案內容載入進來。import 只是請編譯器幫你打字,讓編譯器把沒有姓的類別加上姓,并不會把別的文件的程式碼寫進來。如果你想練習打字,可以不要使用 import,只要在用到類別的時候,用它的全部姓名來稱呼它就行了(就像例子一開始那樣),跟使用 import 完全沒有甚么兩樣。

        另外,雖然人不可以太懶,但是 Sun 還是幫我們多偷了一點懶。因為java.lang 這個套件實在是太常太常太常用到了,幾乎沒有程序不用它的,所以不管你有沒有寫 import java.lang;,編譯器都會自動幫你補上,也就是說編譯器只要看到沒有姓的類別,它就會自動去 java.lang 里面找找看,看這個類別是不是屬于這個套件的。所以我們就不用特別去import java.lang了。

      【Java中import的使用】相關文章:

      關于Java的import10-27

      java中File類的使用方法10-01

      java中continue跳轉語句使用方法06-06

      java中File類有哪些使用方法06-30

      使用JavaScript實現Java的List功能10-26

      在java中Synchronized的用法10-15

      sun認證考試:Java.io的使用08-23

      Java中的動態代碼編程06-27

      在Java中執行JavaScript代碼07-14

      Java中調用Oracle包的過程06-27

      主站蜘蛛池模板: 常州市| 丝袜美腿一区二区在线观看| 中文字幕一区二区三区一一| 翁牛特旗| 被暴雨淋湿爆乳少妇正在播放 | 国产成人亚洲欧美三区综合| 定结县| 日韩精品一区二区av在线| 女优av福利在线观看| 美女精品国产一区二区三区| 年辖:市辖区| 欧美人与动牲交片免费播放| 亚洲av中文无码乱人伦在线咪咕| 亚洲AV秘 无码一区二区在线| 桐城市| 云龙县| 911国产在线观看精品| 青青草国产成人在线视频| 人妻中文字幕不卡精品| 国产精品亚洲一区二区三区正片| 国产一区二区三区资源在线观看| 少妇极品熟妇人妻专区视频| 在线日韩人妻高清在线| 日本肥老熟妇在线观看| 完整在线视频免费黄片| 国产青青草自拍视频在线播放| 中文字幕在线观看乱码一区| 长海县| 久色精品国产亚洲av麻豆一| 博野县| 无锡市| 看黄色亚洲看黄色亚洲| 枣强县| 国产一区二区三区av免费观看| 汾阳市| 客服| 97人妻无码免费专区| 亚洲综合自拍偷拍视频| 国产韩国精品一区二区三区| 最大色网男人的av天堂| 加勒比东京热久久综合|