java static 作用详解
生活随笔
收集整理的這篇文章主要介紹了
java static 作用详解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
static表示 “靜態”的意思,用來修飾成員變量和成員方法,也可以形成靜態static代碼塊,也可是修飾內部類,
我們常說的靜態內部類,注意外部類不能使用靜態的,
static方法就是沒有this的方法。在static方法內部不能調用非靜態方法,反過來是可以的。
而且可以在沒有創建任何對象的前提下,僅僅通過類本身來調用static方法。這實際上正是static方法的主要用途
?
使用注意:
在靜態方法中沒有this關鍵字因為靜態是隨著類的加載而加載,而this是隨著對象的創建而存在的。
靜態比對象優先存在。靜態可以訪問靜態的,但是靜態不能訪問非靜態的。非靜態的可以去訪問靜態的。
?
舉例 普通方法與靜態方法調用的區別
Java 靜態方法 與 普通的方法
?
public class Main {public static void main(String[] args){Main main = new Main();main.Man(); //普通方法調用Main.People();//靜態方法調用}//普通方法public void Man(){}//靜態方法public static void People(){}}
靜態方法(Static Method)與靜態成員變量一樣,屬于類本身,在類裝載的時候被裝載到內存(Memory),不自動進行銷毀,會一直存在于內存中,直到JVM關閉。
非靜態方法(Non-Static Method)又叫實例化方法,屬于實例對象,實例化后才會分配內存,必須通過類的實例來引用。不會常駐內存,當實例對象被JVM 回收之后,也跟著消失。?
?
?
Java 靜態變量與非靜態變量?
從上面的解釋知道 無論是靜態變量還是靜態方法 都是屬于類本身,使用的時候可以直接調用
看下面案例
public class Main {private String name="小明"; //非靜態private static int age=18; //靜態public static void main(String[] args){
// System.out.print(name);//錯誤的不能直接調用Main main = new Main();System.out.print(main.name);System.out.print(age);}}
?
?
總結
以上是生活随笔為你收集整理的java static 作用详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: bios设置,如何重置为默认??
- 下一篇: 谁知道抛丸机多少钱一台