JDK 主目錄下面的一個名叫 src.zip的壓縮文件裡面,所有的java類和方法的源文件都在這裡面
如我電腦上的 C:\Program Files\Java\jdk1.6.0_10\src.zip
『貳』 java 靜態方法很多,靜態方法是存儲在哪個代里
我問題是這樣的: 問題補充:我的問題是既然,manager是單例的,那寫成靜態方法的調用又有何不可,從內存的角度分析看?java的gc角度看?能不能詳細說一下 問題補充:suziwen 寫道DAO,MANAGER寫成靜態的是實現 單例,那樣才更省內存。。。我的問題是既然,manager是單例的,那寫成靜態方法的調用又有何不可,從內存的角度分析看?java的gc角度看?能不能詳細說一下 問題補充:yqin 寫道從JVM內存管理的角度談談靜態方法和靜態屬性 我直接用靜態方法得了。
『叄』 Java方法區和堆分別儲存什麼
靜態變數、常量在方法區,所有方法,包括靜態和非靜態的,也在方法區。堆儲存對象、數組、非靜態變數。
『肆』 java中的方法代碼存在了哪裡
類的實例方法在內存中是只有一份,不過肯定不會是第一個對象中,如果是第一個對象的話,那麼當第一個對象被銷毀的時候,那麼後面的對象就永遠無法調用了...
類的實例方法存在一個專門的區叫方法區,事實上類剛裝載的時候就被裝載好了,不過它們在"睡眠",只是這些方法必須當有對象產生的時候才會"蘇醒".(比如,一個輸出類的成員變數的方法,如果連對象都沒有,何來的輸出成員變數).所以,方法在裝載的時候就有了,但是不可用,因為它沒有指象任何一個對象。
而靜態的又不一樣了,靜態的東西存在靜態區,他們和類是一個等級的,就是說只要類被裝載,它們就可以直接用.(用類名來調用).他們不依賴與任何對象,所以也不能輸出任何對象的成員屬性.(除非成員屬性也是靜態的).
而你最後的一句話也是錯的,"類的所有數據在內存中只有靜態的才又空間".
當然不是,每個對象在new的時候都會在堆區中開辟內存,用來保存對象的屬性和方法.(實際上方法保存的只是方法區的引用,如果保存的是方法本身,那麼試想一下,有多少個對象就得有多少個方法,那麼又和第一點中"實例方法在內存中只有一份拷貝"相矛盾了)
好了,事實上內存圖很復雜和麻煩,算比較深的東西了,很多用JAVA多年的人也不太了解其原理,因為開發也不要用..
更多的問題可以去遠標培訓去問技術老師。
『伍』 java查詢方法放哪
你看你用不用框架了,如果用的話就直接在控制層中掉用層的實現就好
如果不用框架了的,你就直接把方法寫在層然後你直接去調用到層的方法就好了