當前位置:首頁 » 編程軟體 » java編譯單元

java編譯單元

發布時間: 2023-02-04 03:37:42

㈠ 文件名中,兩類相+怎麼寫

java保存的文件名必須與類名一致;
2.如果文件中只有一個類,文件名必須與類名一致;
3.一個Java文件中只能有一個public類;
4.如果文件中不止一個類,文件名必須與public類名一致;
5.如果文件中不止一個類,而且沒有public類,文件名可與任一類名一致。

當編寫一個Java源代碼文件時,此文件通常被稱為編譯單元(有時也稱為轉譯單元)。每個編譯單元都必須要有一個後綴為.java,而在編譯單元內測可以 有一個public類,該類的名稱必須與文件名稱相同(包括大小寫,但不包括文件的後綴名.java)。每個編譯單元只能有一個public類,否則編譯 器就不會接受。如果在該編譯單元之中還有額外的類的話,那麼在包之外的世界是無法看見這些類的,這是因為他們不是public類,而且他們主要用來為主要 public類提供支持。

\1. 每個編譯單元(文件)都只能有一個public類。這表示,每個編譯單元都有單一的公共介面,用public類來表現。該介面可以按要求包含眾多的支持包訪問許可權的類。如果在某個編譯單元內有一個以上的public類,編譯器就會給出出錯信息。

\2. public類的名稱必須完全與含有該編譯單元的文件名相匹配,包括大小寫。所以對於Widget而言,文件的名稱必須是Widget.java,而不是widget.java或WIDGET.java。如果不匹配,同樣將得到編譯時錯誤。

\3. 雖然不是很常用,但編譯單元內完全不帶public類也是可能的。這種情況下,可以隨意對文件命名。(盡管隨意命名會使得人們在閱讀和維護代碼時產生混淆。)

一個Java文件可以有多個類作為內部類/Adapter類/其它類,但是只能有一個public類,且類名必須和文件名一致。這是這類語言的一個不好的地方。

在現實情況中,經常有一些很小的類由幾個類共同需要,因此無法作為內部類,而且介面關系必須設置為public,這樣就導致了大量很小的.Java程序,每個都只有幾百位元組。

這類語言的另一個問題是一個類的所有實現的方法都必須包含在同一個文件中。在swing應用程序中,經常導致長達一兩百K位元組的源程序,行數達到三四千行,搞得JBuilder奇慢無比。

一個 .java 文件,可以有多個類,但是文件名只能有一個,用哪一個類名來充當文件名呢?其實文件名是無所謂的,因為將來用 javac 進行編譯的時候,最終會生成多個 .class 文件,每一個類對應個 .class 文件。運行時只要運行對應的 .class 文件就可以了,這時 .java 文件就顯得沒什麼用了( 運行時不需要 ),那還管它叫什麼名字。

但是當你的類被 public 修飾時,此時文件名必須和該類保持一致(例如 public class A{} 只能放在 A.java 文件中,不然在用 javac 編譯時會提示錯誤:類 A 是公共的,應在名為 A.java 的文件中聲明)。也就是說在同一個 .java 文件中,不應該出現2個或2個以上的 public class 。

如果有一個public class類,就應該讓文件名和此類名相同;那如果沒有呢,即所有的 class 都沒有修飾符,那麼可以給該文件隨便起名字,甚至可以不和任意一個類同名,哪怕是漢字名稱都可以,但是後綴還是要有.java 的 。

註:有很多初學者 ( 我也是 ) 可能會認為文件名應該也和 main 方法所在類有關系,其實不然。main 方法只是程序的一個入口,老師講「一個程序只能有一個入口」,好象是在說只能有一個 main 方法,其實,只要你高興,就可以在所有類里都寫上 main 方法,給程序提供N多個入口,但是最後你運行程序的時候也只能從其中的一個入口進去,這就是 main 的作用( 程序入口 )。(這也就是為什麼你會發現,程序員在做單元測試時,會往自己做的很多類裡面添加 main 方法,因為他要為自己做的東西添加運行入口,從而能方便測試。)

㈡ JAVA問題:什麼叫做一個編譯單元

當一個c或cpp文件在編譯時,預處理器首先遞歸包含頭文件,
形成一個含有所有
必要信息的單個源文件,這個源文件就是一個編譯單元。
這個編譯單元會被編譯成為一個與cpp
文件名同名的目標文件

連接程序把不同編譯單元中產生的符號聯系起來,構成一個可執行程序。

㈢ JAVA中的public classa是什麼意思為什麼只能有一個謝謝

public class是公共類的意思,public 是訪問修飾符.為什麼只有一個,java規定,一個類文件,public 修類的class只有一個,並且類名必須和你新建的這個類文件名一樣,所以一個類文件中可以有多個類,但由public修飾的類只能有一個。

(3)java編譯單元擴展閱讀:

Java具有簡單性、面向對象、分布式、健壯性、安全性、平台獨立與可移植性、多線程、動態性等特點 。Java可以編寫桌面應用程序、Web應用程序、分布式系統和嵌入式系統應用程序等。

編程工具

Eclipse:一個開放源代碼的、基於Java的可擴展開發平台 。

NetBeans:開放源碼的Java集成開發環境,適用於各種客戶機和Web應用。

IntelliJ IDEA:在代碼自動提示、代碼分析等方面的具有很好的功能。

MyEclipse:由Genuitec公司開發的一款商業化軟體,是應用比較廣泛的Java應用程序集成開發環境 。

EditPlus:如果正確配置Java的編譯器「Javac」以及解釋器「Java」後,可直接使用EditPlus編譯執行Java程序 。

工作原理:

由四方面組成:

(1)Java編程語言

(2)Java類文件格式

(3)Java虛擬機

(4)Java應用程序介面

參考資料:網路:java

菜鳥網:Java基礎語法

Java從入門到精通(第3版):清華大學出版社:豆瓣

㈣ javamain函數需要寫測試嗎

開發語言
java中類的main方法總結

小熊coder
原創
關注
10點贊·8235人閱讀
一、java中每個類都需要有main方法嗎?
每個類可以有也可以沒有main方法,

甚至所有類里可以都沒有main方法。如果你想從某個類做為入口開始運行整個程序。那麼就把他設成 public ,之後再裡面寫個main方法作為入口。

每個項目都要有一個主類,這個主類中必須得有main,用於程序的入口.在程序測試時,一般每個類中都有一個main,用於方便測試人員對類成員進行測試
不是,可有可無。但是你要執行的類中必須有,因為main函數是提供程序執行的進入口。比如你 java Test 那麼Test類中必須有個main函數。也可拿來做測試某個類用。如你要測試一下Test類內的方法(這時的Test類可能不是主類,假設這時此類只提供給主類一些功能),那麼你可以在Test類中加入一個main方法,調用Test類中的成員變數和方法,查看結果,達到測試的效果。

二、一個java文件中可包含多個main方法
一個java文件中可包含多個main方法

java中的main方法是java應用程序的入口,java程序在運行時,首先調用執行main方法。但並不是說java中只能有一個main方法,不同類中都可以包含main方法。但是當JVM進行編譯時,只會會選擇介面類裡面的main方法,作為編譯的入口。

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-JufYzJib-1640105308869)(https://raw.githubusercontent.com/xkyvvv/blogpic2/main/img/image-20211222001147510.png)]

一個Java文件至多包含一個公共類
編寫一個java源文件時,該源文件又稱為編譯單元。一個java文件可以包含多個類,但至多包含一個公共類,作為編譯時該java文件的公用介面,公共類的名字和源文件的名字要相同,源文件名字的格式為【公共類名.java】。

當同一個源文件中包含兩個public class時,JVM會立馬報出錯誤

但java文件中可以不包含任何public公共類,但編譯時JVM仍將與源文件名相同的類作為默認的介面。即便其他的類提供了main方法,JVM仍然無法編譯。

熱點內容
大學php開發培訓 發布:2024-04-20 08:04:35 瀏覽:987
小米2s存儲設置 發布:2024-04-20 07:58:38 瀏覽:900
株洲移動網路伺服器地址 發布:2024-04-20 07:45:48 瀏覽:689
119濃度的鹽酸怎麼配置 發布:2024-04-20 06:23:38 瀏覽:119
資料庫pf 發布:2024-04-20 05:57:36 瀏覽:393
c語言編譯出現連接錯誤 發布:2024-04-20 05:42:18 瀏覽:198
湖北戴爾伺服器維修系統雲主機 發布:2024-04-20 05:36:47 瀏覽:62
android上傳數據 發布:2024-04-20 05:36:43 瀏覽:143
python替換文本內容 發布:2024-04-20 05:21:22 瀏覽:899
urllib3源碼 發布:2024-04-20 05:11:23 瀏覽:35