日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

为什么java需要静态类_为什么Java主要方法是静态的?

發(fā)布時(shí)間:2025/4/5 java 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 为什么java需要静态类_为什么Java主要方法是静态的? 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

小編典典

只是約定。實(shí)際上,即使名稱main()和傳入的參數(shù)也完全是約定俗成的。

當(dāng)您運(yùn)行java.exe(或Windows上的javaw.exe)時(shí),實(shí)際上發(fā)生了幾次Java本機(jī)接口(JNI)調(diào)用。這些調(diào)用將加載真正是JVM的DLL(是的-java.exe不是JVM)。JNI是我們在橋接虛擬機(jī)世界以及C,C ++等世界時(shí)使用的工具。反之亦然-至少(據(jù)我所知)不可能真正獲得JVM在不使用JNI的情況下運(yùn)行。

基本上,java.exe是一個(gè)超級簡單的C應(yīng)用程序,它解析命令行,在JVM中創(chuàng)建一個(gè)新的String數(shù)組來保存這些參數(shù),解析出您指定為包含main()的類名,使用JNI調(diào)用來查找main()方法本身,然后調(diào)用main()方法,將新創(chuàng)建的字符串?dāng)?shù)組作為參數(shù)傳入。這非常類似于使用Java反射時(shí)所執(zhí)行的操作-它只是使用容易混淆的命名本機(jī)函數(shù)調(diào)用。

編寫自己的java.exe版本(源代碼隨JDK分發(fā))并讓它執(zhí)行完全不同的操作,這是完全合法的。實(shí)際上,這正是我們對所有基于Java的應(yīng)用程序所做的事情。

我們每個(gè)Java應(yīng)用程序都有自己的啟動器。我們主要這樣做是為了獲得自己的圖標(biāo)和進(jìn)程名稱,但是在其他情況下,除了常規(guī)的main()調(diào)用以外,我們還想做些其他事情以方便處理(例如,在一種情況下, COM互操作性,我們實(shí)際上將COM句柄傳遞給main()而不是字符串?dāng)?shù)組)。

所以,長話短說:它是靜態(tài)的原因是方便的b / c。之所以稱其為“ main”,是因?yàn)樗仨毷悄撤N東西,而main()是它們在C的早期(以及那時(shí),函數(shù)名很重要)所做的事情。我想java.exe可以允許您只指定一個(gè)完全限定的主方法名稱,而不是僅指定類(java com.mycompany.Foo.someSpecialMain)-但這使IDE很難自動檢測“項(xiàng)目中的“可啟動”類。

2020-02-27

總結(jié)

以上是生活随笔為你收集整理的为什么java需要静态类_为什么Java主要方法是静态的?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。