<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          php靜態(tài)方法與非靜態(tài)方法用法區(qū)別

          共 564字,需瀏覽 2分鐘

           ·

          2022-01-08 08:20

          靜態(tài)方法和非靜態(tài)方法的區(qū)別總結如下:

          靜態(tài)方法屬于類所有,類實例化前即可使用。也就是不需要new一個對象就可以使用該對象的方法。比如object::fun1()這樣的格式;

          非靜態(tài)方法可以訪問類中的任何成員,靜態(tài)方法只能訪問類中的靜態(tài)成員;

          因為靜態(tài)方法在類實例化前就可以使用,而類中的非靜態(tài)變量必須在實例化之后才能分配內存;

          static內部只能出現(xiàn)static變量和其他static方法(即靜態(tài)方法不能調用非靜態(tài)屬性 。也不能使用self::調用非靜態(tài)屬性)!而且static方法中還不能使用this等關鍵字,因為它是屬于整個類。靜態(tài)方法內部調用其他靜態(tài)方法,可以使用self::方法名稱的形式來實現(xiàn);

          靜態(tài)方法效率上要比實例化高,靜態(tài)方法的缺點是不自動進行銷毀,而實例化的則可以做銷毀;

          靜態(tài)方法和靜態(tài)變量創(chuàng)建后始終使用同一塊內存,而使用實例的方式會創(chuàng)建多個內存。


          主要區(qū)別:

          靜態(tài)方法在創(chuàng)建對象前就可以使用了,非靜態(tài)方法必須通過new出來的對象調用。
          靜態(tài)方法與實例方法在性能和占用內存上沒有明顯的區(qū)別,是否聲明為靜態(tài)方法需要從類型的非靜態(tài)字段、事件、面向對象擴展和多態(tài)這三方面來考慮。

          總結:靜態(tài)的是不論實例化多少次結果最終只有一個,而動態(tài)的每次結果都不一樣。


          瀏覽 52
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  亚洲最新| 伊人大香蕉在线观看视频 | 美女扣逼网站 | 国精品无码一区二区三区在线秋菊 | 色日本黄色视频 |