小菜:关于main方法的面试题
轉(zhuǎn)載自??小菜:關(guān)于main方法的面試題
問題:如果main方法被聲明為private會怎樣?
答案:能正常編譯,但運(yùn)行的時候會提示“main方法不是public的”。
?
問題:如果去掉了main方法的static修飾符會怎樣?
答案:程序能正常編譯。運(yùn)行時會拋NoSuchMethodError異常。
?
問題:public static void寫成static public void會怎樣?
答案:程序正常編譯及運(yùn)行。
?
問題:main方法的參數(shù)里面,字符串?dāng)?shù)組的第一個參數(shù)是什么?
答案:數(shù)組是空的,沒有任何元素。不像C或者C++,第一個元素默認(rèn)是程序名。如果命令行沒有提供任何參數(shù)的話,main方法中的String數(shù)組為空,但不是null。
?
問題:一個類能擁有多個main方法嗎?
答案:可以,但只能有一個main方法擁有以下簽名:public static voidmain(String[] args) ;否則程序?qū)o法通過編譯。編譯器會警告你main方法已經(jīng)存在。
?
問題:程序中可以允許多個類同時擁有都有main方法嗎?
答案:可以。當(dāng)程序運(yùn)行的時候,我們會指定運(yùn)行的類名。JVM只會在你指定的類中查找main方法。因此多個類擁有main方法并不存在命名沖突的問題。
?
問題:說明一下public static void main(String args[])這段聲明里每個關(guān)鍵字的作用。
答案:public: main方法是Java程序運(yùn)行時調(diào)用的第一個方法,因此它必須對Java環(huán)境可見,所以可見性設(shè)置為public。
static: Java平臺調(diào)用這個方法時不會創(chuàng)建這個類的一個實(shí)例,因此這個方法必須聲明為static。
void: main方法沒有返回值。
String是命令行傳進(jìn)參數(shù)的類型,args是指命令行傳進(jìn)的字符串?dāng)?shù)組。
總結(jié)
以上是生活随笔為你收集整理的小菜:关于main方法的面试题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【IT之家评测室】英特尔酷睿第 14 代
- 下一篇: 面试经历—广州YY(欢聚时代)