java編程 為什么JAVA文件中只能含有一個(gè)Public類?
為什么JAVA文件中只能含有一個(gè)Public類?每個(gè)編譯單元(文件)只能有一個(gè)公共類。這意味著每個(gè)編譯單元只能有一個(gè)公共接口,由其公共類表示。我認(rèn)為這可能是從軟件架構(gòu)設(shè)計(jì)和安全性設(shè)計(jì)中得出的結(jié)論。如果
為什么JAVA文件中只能含有一個(gè)Public類?
每個(gè)編譯單元(文件)只能有一個(gè)公共類。這意味著每個(gè)編譯單元只能有一個(gè)公共接口,由其公共類表示。我認(rèn)為這可能是從軟件架構(gòu)設(shè)計(jì)和安全性設(shè)計(jì)中得出的結(jié)論。如果要運(yùn)行包含main()的類,它不必是公共的。Java虛擬機(jī)實(shí)例通過(guò)調(diào)用類的main()來(lái)運(yùn)行Java程序,該類必須是公共靜態(tài)void并接收字符串?dāng)?shù)組作為參數(shù)。任何具有這樣main()的類都可以用作java程序的起點(diǎn)。這并不意味著帶有main()方法的類必須是公共類。文件名必須與公共類的類名一致。(如果文件中有一個(gè)公共類),我們可以看到如果有多個(gè)公共類,那么文件名應(yīng)該屬于哪個(gè)公共類?顯然,一個(gè)java源文件只能有一個(gè)公共類。因此總結(jié)如下:一個(gè)java源文件最多只能有一個(gè)公共類。當(dāng)存在公共類時(shí),源文件名必須與其一致,否則無(wú)法編譯。如果源文件中沒(méi)有公共類,則文件名和類之間沒(méi)有一致性要求。至于main(),您不必將其放入public類來(lái)運(yùn)行程序。