靜態類,變量或方法 是相對於編程語言(JAVA)這一層面說的,
單例等是相對於軟件工程的設計模式這一層面說的
只是在JAVA裏的單例是通過靜態變量等手段實現,用來保證只有一個實例對像.
當然你可以直接聲明靜態方法或類直接調用
就像你完全可以不用什麼STRUTS,SPRING,HIBERNATE,自己把所有東西放到一個MAIN函數裏.也能實現業務上的功能 .
還有靜態變量 你就得考慮同步的問題,不然一個人開發時測試不出什麼問題,當高併發時,就容易 出現這個靜態變量 被其他線程修改的問題(因爲你的一個靜態變量在內存裏只有一個值)
同單例模式 一樣,單例拿到的對像也是要考慮線程同步的問題,以前的STRUTS1.X就是一個單例問題引起的線程不安全問題
再有就是靜態變量是不會被 JVM內存回收的,雖然只加載一次,再用內存少,不像那些NEW出來的對像,NEW 多少次會加載多次那樣佔內存.但是這靜態東西用多了,就會造成無法GC,內存不�夠等 問題,
正因爲如此,不是說想用靜態就不加限制的用的
http://blog.csdn.net/wind5shy/article/details/3776931