内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

怎么進行static的分析-創(chuàng)新互聯(lián)

這期內容當中小編將會給大家?guī)碛嘘P怎么進行static的分析,文章內容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

為雙塔等地區(qū)用戶提供了全套網頁設計制作服務,及雙塔網站建設行業(yè)解決方案。主營業(yè)務為網站建設、做網站、雙塔網站設計,以傳統(tǒng)方式定制建設網站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

static 總結

        static Fields
        static Methods
        static member class
        static initializer
--------------------------------------------------------------------------------
static 成員調用方式:
        static 是一個修飾符, 用于修飾成員(成員變量, 成員函數和成員類/接口)
        當成員被 static 修飾后, 就多了一個調用方式. 
        除了可以被對象調用外, 還可以直接被類名調用. 
        調用格式: 類名.靜態(tài)成員

        1) 無論是否 new 對象, 都可采用的調用方式: 類名.靜態(tài)成員 (建議采用)
        2) 必須在 new 對象之后, 才可采用的調用方式: 對象.靜態(tài)成員 (不建議采用, 閱讀性不好)
--------------------------------------------------------------------------------
static 成員特點:
        > 隨著類的加載而加載, 隨著類的消失而消失
                也就是說, 靜態(tài)成員的生命周期最長(等同于類的生命周期)
        > 優(yōu)先于對象而存在
                靜態(tài)成員是先存在的, 而對象是后存在的
        > 被所有對象所共享
        > 可以直接被類名調用
--------------------------------------------------------------------------------
實例變量和類變量區(qū)別:
1. 存儲位置
        類變量隨著類的加載而存儲于方法區(qū)中
        實例變量隨著對象的創(chuàng)建而存儲于堆內存中
2. 生命周期
        類變量生命周期最長, 隨著類的加載而加載, 消失而消失
        實例變量生命周期隨著對象的創(chuàng)建而創(chuàng)建, 消失而消失
3. 調用方式
        實例變量只能通過對象調用
        類變量既可以通過對象調用, 也可以通過類名調用.
--------------------------------------------------------------------------------
何時使用 static?
        當成員變量的值被類的所有對象所共享時, 用 static 修飾, 即定義為類變量
                對象中特有的數據定義為實例變量, 存在于堆內存中
        當成員函數不操作任何成員變量或只操作 static 成員變量時, 用 static 修飾
        成員類/接口呢??? static member class 呢?

--------------------------------------------------------------------------------
static 使用注意事項
        > 靜態(tài)只能訪問靜態(tài)
                非靜態(tài)可以訪問靜態(tài)也可以訪問非靜態(tài)
        > 靜態(tài)中不可以使用 this, super 關鍵字
                因為靜態(tài)優(yōu)先于對象存在, 所以靜態(tài)中不能使用 this, super 關鍵字
        > 主函數是靜態(tài)的
--------------------------------------------------------------------------------
static 利與弊
        好處:
                對所有對象的共享數據進行單獨空間的存儲, 節(jié)省空間. 沒必要每個對象都存儲一份.
                可以直接被類名調用
        弊端:
                生命周期過長
                訪問出現(xiàn)局限性(靜態(tài)雖好, 只能訪問靜態(tài))
--------------------------------------------------------------------------------
主函數 main 的定義
        public static void main(String[] args) {}
        主函數是一個特殊的函數. 作為程序的入口, 可以被 JVM 調用.
        主函數必須是固定格式的, 才能被 JVM 識別.

        主函數定義的特點:
                public: 代表著該函數的訪問權限是跨包的
                static: 代表著主函數隨著類的加載而加載
                                不需要創(chuàng)建對象, 直接用主函數所屬類名即可調用. 
                                命令行窗口輸入 java StaticDemo 時, 實際上就是在執(zhí)行 Static.main(String[])
                void: 主函數沒有具體的返回值
                main: 不是關鍵字, 但是是一個特殊的單詞, 可以被 JVM 識別.
                (String[] args): 主函數的參數列表. 參數類型是一個字符串類型的數組.
        
        主函數 main 也具備一般函數的特點, 可以重載. 
                但是 JVM 只調用形參列表為 String[] 的 main 函數.
        主函數 main 的形參名字可以更改, 仍然可以被 JVM 識別.
        如何通過 main 函數給 JVM 傳遞參數
--------------------------------------------------------------------------------
static 的應用 - 工具類
        每一個應用程序中都有共性的功能. 可以將這些功能進行抽取, 獨立封裝, 以便復用.
--------------------------------------------------------------------------------
靜態(tài)代碼塊

聲明格式:
        static {
                執(zhí)行語句;
        }

特點:
        隨著類的加載而執(zhí)行 // new 對象或引用類的靜態(tài)成員時可觸發(fā)類的加載
                類是否加載, 可通過添加 static 代碼塊驗證
        只執(zhí)行一次 // 因類只加載一次
        優(yōu)先于主函數執(zhí)行 // 因執(zhí)行主函數之前需先加載主函數所在的類
        只能訪問類的靜態(tài)成員, 不能訪問非靜態(tài)成員

作用:
        用于給類進行初始化
--------------------------------------------------------------------------------
何時可觸發(fā)類加載?
        new 對象或引用類的靜態(tài)成員時可觸發(fā)類的加載
        只創(chuàng)建類類型的引用變量時不會觸發(fā)類的加載

主函數所屬類的static代碼塊優(yōu)先于主函數執(zhí)行
--------------------------------------------------------------------------------
static 代碼塊, 構造代碼塊和構造函數比較
        (1) static代碼塊: 用于類初始化. 隨類加載執(zhí)行且只執(zhí)行一次.
        (2) 構造代碼塊: 用于所有對象初始化. new一個對象執(zhí)行一次。
        (3) 構造函數: 對應對象初始化. 若new該構造函數對應的對象則該構造函數執(zhí)行一次.
        (4) 訪問限制: 
                static 代碼塊只能訪問 static 成員;
                構造代碼塊能調用 static 和非 static 成員, 但不能調用構造函數;
                構造函數可以調用 static, 非 static 和其他構造函數.
        (5) 執(zhí)行順序:static 代碼塊->構造代碼塊->對應構造函數
                類加載時, 做類的初始化動作, 執(zhí)行且只執(zhí)行一次 static 代碼塊;
                new 對象時, 若類未加載則先加載類, 若已加載則做對象的初始化動作, 依次執(zhí)行構造代碼塊, 對應構造函數.
                ps:new 對象不一定會加載類, 因類可能早已加載.

上述就是小編為大家分享的怎么進行static的分析了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注創(chuàng)新互聯(lián)-成都網站建設公司行業(yè)資訊頻道。

分享文章:怎么進行static的分析-創(chuàng)新互聯(lián)
轉載來源:http://www.rwnh.cn/article26/pjgcg.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、營銷型網站建設電子商務、品牌網站建設、網站設計公司微信公眾號

廣告

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

成都網頁設計公司
洛阳市| 富裕县| 洛浦县| 康马县| 民勤县| 镇安县| 文登市| 沙湾县| 丰宁| 汝南县| 南丰县| 鄢陵县| 赣榆县| 漾濞| 永善县| 临海市| 延寿县| 夏津县| 台前县| 蓬莱市| 长治县| 临高县| 冕宁县| 肃北| 泸定县| 姚安县| 辽中县| 疏附县| 淅川县| 明星| 郴州市| 泾源县| 通化县| 桂阳县| 吴忠市| 霍州市| 平乡县| 井研县| 佛教| 乌拉特后旗| 岳普湖县|