A. java中main函數必須是靜態的么
是的,必須是。還必須沒有返回值,公共的。
B. 在JAVA中為什麼要把一個main方法定義成一個靜態方法
1。靜態方法的特點:直接調用類名+方法名,不需要實例化類對象。
如:Hello.P();
非靜態方法則必須實例化一個對象出來,再通過對象調用該方法如:Hellohello=newHello(參數1~n);hello.P();
2。程序被打包成.jar文件後(相當於.exe文件),給外界唯一的介面就是main方法。使用者雙擊.jar文件,其實就是讓虛擬機執行main方法。
3。main方法不是提供給程序員的,而是提供給虛擬機和使用客戶的。一個軟體你沒法讓客戶知道你內部的詳情,當然客戶也就沒辦法知道怎麼去實例化對象,更不知道實例化對象時需要輸入什麼參數了。所以只能採用靜態方法。
C. java中的main函數為什麼是靜態的
非靜態成員函數在執行前必須先構造並實例化該函數所在的類。
如果允許非靜態的main,那麼main函數所在的類必須先進行實例化,
那麼就需要再寫個函數去實例化main所在的類,再調用main,這個實例化代碼又寫在哪呢?如果它也是非靜態的,豈不是又要寫個函數去實例化它所在的類嘛?
因此,JAVA語言就規定了main必須是靜態的。
D. 為什麼java的main方法必須是靜態的
所有static成員都是在程序裝載時初始化的,被分配在一塊靜態存儲區域。
這個區域的成員一旦被分配,就不再改變地址啦。直到程序結束才釋放。
main()就存儲在這里。
盡管包含main()的類還沒有被實例化,但是main()方法已經可以使用啦。
而且JVM將會自動調用這個方法。通過main()的調用,再實例化其他的對象,
也包括自己所在的類。
E. 填空題:Java應用程序中的main方法,必須是一個________靜態方法
Java中 main 方法的寫法是
public static void mian(String arg[]) {...}
由此可知,Java應用程序中的main方法,必須是一個共有的(public),無返回值(void),帶參的(String arg[]) 靜態(static)方法
希望能幫到你
F. 怎樣在java中定義一個main類,並且為public屬性,且main類中包含main的靜態方法
//名為Main的一個類
public class Main {
//主方法
public static void main(String[] args) {
}
//名為main的無參靜態方法
public static void main() {
}
//名為main的有參靜態方法
public static void main(int n) {
}
}