欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

java中靜態(tài)變量指的是什么

小編給大家分享一下java中靜態(tài)變量指的是什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

鎮(zhèn)遠網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,鎮(zhèn)遠網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為鎮(zhèn)遠超過千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)營銷網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的鎮(zhèn)遠做網(wǎng)站的公司定做!

Java的優(yōu)點是什么

1. 簡單,只需理解基本的概念,就可以編寫適合于各種情況的應(yīng)用程序;2. 面向?qū)ο螅?. 分布性,Java是面向網(wǎng)絡(luò)的語言;4. 魯棒性,java提供自動垃圾收集來進行內(nèi)存管理,防止程序員在管理內(nèi)存時容易產(chǎn)生的錯誤。;5. 安全性,用于網(wǎng)絡(luò)、分布環(huán)境下的Java必須防止病毒的入侵。6. 體系結(jié)構(gòu)中立,只要安裝了Java運行時系統(tǒng),就可在任意處理器上運行。7. 可移植性,Java可以方便地移植到網(wǎng)絡(luò)上的不同機器。8.解釋執(zhí)行,Java解釋器直接對Java字節(jié)碼進行解釋執(zhí)行。

在java中,靜態(tài)變量指的是被static修飾的類的變量;靜態(tài)變量被所有類實例對象所共享,在內(nèi)存中只有一個副本,當(dāng)且僅當(dāng)在類初次加載時會被初始化。

本教程操作環(huán)境:windows7系統(tǒng)、java8版、DELL G3電腦。

1. JVM運行時數(shù)據(jù)區(qū)域

java中靜態(tài)變量指的是什么

  • Java堆存放幾乎所有的對象實例,被所有線程共享

  • 方法區(qū)(永久代)與Java堆一樣,是各個線程共享的內(nèi)存區(qū)域,它用于存儲已經(jīng)被虛擬機加載類的類信息、常量、靜態(tài)變量(static variable)等

2. static變量

被static修飾的類的變量,也稱為靜態(tài)變量。非靜態(tài)變量也稱為實例變量

靜態(tài)變量和實例變量的區(qū)別是:

  • 靜態(tài)變量被所有類實例對象所共享,在內(nèi)存中只有一個副本,當(dāng)且僅當(dāng)在類初次加載時會被初始化。

  • 實例變量是實例對象所擁有的,在創(chuàng)建對象的時候被初始化,存在多個副本,各個實例對象擁有的副本互不影響

public class MyStatic {
    // 靜態(tài)變量
    private static int index = 0;

    // 實例變量
    private int count = 0;

    public void inc() {
        index++;
        count++;
    }

    public String  get() {
        return "靜態(tài)變量index = " + index + ",  實例變量count = " + count;
    }
}
/**
 * index是靜態(tài)變量
 * count是實例變量
 * */
public class StaticVariableTest {

    public static void main(String[] args) {
        MyStatic myStatic1 = new MyStatic();
        MyStatic myStatic2 = new MyStatic();
        MyStatic myStatic3 = new MyStatic();

        myStatic1.inc();
        System.out.println("myStatic1的index、count增加1:");
        System.out.println("myStatic1的" + myStatic1.get());
        System.out.println("myStatic2的" + myStatic2.get());
        System.out.println("myStatic3的" + myStatic3.get() + "\n");

        myStatic2.inc();
        System.out.println("myStatic2的index、count增加1:");
        System.out.println("myStatic1的" + myStatic1.get());
        System.out.println("myStatic2的" + myStatic2.get());
        System.out.println("myStatic3的" + myStatic3.get() + "\n");

        myStatic3.inc();
        System.out.println("myStatic3的index、count增加1:");
        System.out.println("myStatic1的" + myStatic1.get());
        System.out.println("myStatic2的" + myStatic2.get());
        System.out.println("myStatic3的" + myStatic3.get());
    }
}

運行結(jié)果:

java中靜態(tài)變量指的是什么

可以看出:

  • 靜態(tài)變量index是多個對象實例共享的

  • 實例對象count是多個對象實例私有的

myStatic1的index、count增加1:
myStatic1的靜態(tài)變量index = 1,  實例變量count = 1
myStatic2的靜態(tài)變量index = 1,  實例變量count = 0
myStatic3的靜態(tài)變量index = 1,  實例變量count = 0

myStatic2的index、count增加1:
myStatic1的靜態(tài)變量index = 2,  實例變量count = 1
myStatic2的靜態(tài)變量index = 2,  實例變量count = 1
myStatic3的靜態(tài)變量index = 2,  實例變量count = 0

myStatic3的index、count增加1:
myStatic1的靜態(tài)變量index = 3,  實例變量count = 1
myStatic2的靜態(tài)變量index = 3,  實例變量count = 1
myStatic3的靜態(tài)變量index = 3,  實例變量count = 1

java中靜態(tài)變量指的是什么

3. static變量誤區(qū)

3.1 static不能作用于局部變量
  • C/C++中static是可以作用域局部變量的

  • Java中static是不允許用來修飾局部變量。
    不要問為什么,這是Java語法的規(guī)定。
    java中靜態(tài)變量指的是什么

3.2 this可以訪問靜態(tài)變量

靜態(tài)變量雖然獨立于對象,但是不代表不可以通過對象實例去訪問,所有的靜態(tài)方法和靜態(tài)變量都可以通過對象實例訪問(只要訪問權(quán)限足夠)。
this表示當(dāng)前對象實例,而static靜態(tài)變量被所有對象所共享,所以可以通過this訪問靜態(tài)變量

public class StaticVariable {
    public static int index = 1;

    public static void main(String[] args) {
        StaticVariable staticVariable = new StaticVariable();
        staticVariable.get();
    }

    private void get() {
        int index = 2;
        System.out.println(this.index);
    }
}

運行結(jié)果:

java中靜態(tài)變量指的是什么

3.3 static不會改變類成員的訪問權(quán)限

Java中的static關(guān)鍵字不會影響到變量或者方法的作用域。在Java中能夠影響到訪問權(quán)限的只有private、public、protected(包括包訪問權(quán)限)這幾個關(guān)鍵字

public class MyStatic {
    public static int index1 = 1;

    // 靜態(tài)變量
    private static int index2 = 0;
}

public class StaticVariableTest {

    public static void main(String[] args) {
        System.out.println(MyStatic.index1);
        System.out.println(MyStatic.index2);
    }
}

java中靜態(tài)變量指的是什么

以上是“java中靜態(tài)變量指的是什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

網(wǎng)頁標(biāo)題:java中靜態(tài)變量指的是什么
網(wǎng)頁鏈接:http://aaarwkj.com/article36/jeghpg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機網(wǎng)站建設(shè)、營銷型網(wǎng)站建設(shè)、App開發(fā)、微信小程序、定制開發(fā)、外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計公司
亚洲区一区二区三区精品| 极品女神福利视频久久| 亚洲中文字幕女同系列av专区| 精品亚洲国产成人av| 欧美一区二区三区日| 日本东京热二三四区不卡免费的| 把熟睡的少妇弄到高潮| 欧美一级特黄免费大片| 久久日韩一区二区三区| 人人爽人人妻人人澡| 五月婷婷六月丁香免费视频| 中文字幕一区侵犯人妻| 高清av在线国产成人精品自拍| 顶级少妇做爰片高潮丸| 日韩av在线高清播放| 日韩成人在线视频中文字幕| 麻豆成人三级电影在线| 亚洲色图综合在线观看| 日韩爱视频一区二区| 超碰国产熟女一区二区三区| 一区二区三区人妻日韩| 亚洲精品国产第一区第二区 | 成人精品欧美欧美一级乱黄| 一本久道久久综合久久鬼色| 日日添夜夜躁欧美一区二区| 国产三级视频网站在线观看| 东京热一区二区电影| 中文字幕制服国产精品| 日韩欧美黄片一区二区三区| 欧美日韩一区二区三区四区在线观看| 97公开视频在线观看| 农村精品少妇久久久久久| 欧美伊香蕉久久综合网99| 一本大道东京热无码AⅤ片| 日韩50岁老女人骚色| 日韩精品欧美成人高清一区二区| 国产男女爱猛视频在线| 欧美日韩性性在线观看| 尤物在线观看精品视频| 日韩不卡的一区免费视频| 国产69精品久久久久久人|