亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

PHP-面向對象

難度初級
時長 2小時30分
學習人數
綜合評分9.50
55人評價 查看評價
9.7 內容實用
9.7 簡潔易懂
9.1 邏輯清晰
  • interface Ia

    interface Ib

    interface AB extends Ia, Ib - 繼承

    class Test implements AB - 實現

    查看全部
  • 查看全部
  • 2-4 類的自動加載


    建議 命名空間 + 類名 = 類文件路徑


    當 屬性或方法被定義為 static 時,這個屬性或方法就成了類的屬性或類的方法,并不屬于對象的屬性或方法。



    查看全部
    0 采集 收起 來源:類的自動加載

    2019-06-02

  • 2-3 命名空間

    常量定義 - const 和 define 的區別

    define 定義的常量是全局的,不受命名空間影響; 如果要定義受命名空間影響的常量,就要使用 const 。?


    以下類型會受到命名空間的影響:

    類(包括抽象類、traits)、接口、函數和常量


    use 關鍵詞 - 導入

    use ... as ... 關鍵詞 - 導入 & 使用別名

    use - 導入類

    use function ... - 導入函數

    use const ... 導入常量


    namespace index;

    include '3.php';

    var_dump(new \Test1());

    備注: \ 反斜杠表示全局空間



    查看全部
    0 采集 收起 來源:命名空間

    2019-06-02

  • this是對象,parent和self是類,self是自身這個類,parent是父類,static是上下文中的當前類,不知道這樣理解對不對。

    查看全部
    0 采集 收起 來源:后期靜態綁定

    2019-05-23

  • <?php

    class test1{

    public static function __callStatic($model,$arga)

    {

    echo $model."<br />";

    print_r($arga);

    }

    }

    test1::go(1,'ok');


    echo "<hr />";

    class A{

    public function go()

    {

    echo? 'gogogogog....';

    }

    }

    function test(A $a)

    {

    $a->go();

    }

    test(new A());


    echo "<hr /> 單例模式:";

    class Test{

    private static $_instance = null;


    private function __construct()

    {


    }


    private function __clone()

    {


    }


    public static function getInstance()

    {

    if(!(self::$_instance instanceof self)){

    self::$_instance = new self();

    }

    return self::$_instance;

    }

    }

    $test1 = Test::getInstance();

    $test2 = Test::getInstance();

    $test3 = Test::getInstance();

    var_dump($test1);

    var_dump($test2);

    var_dump($test3);


    echo "<hr /> 工廠模式:便于底層類的批量修改";

    class Redis

    {

    public function set(){}

    public function get(){}

    }

    class Cache

    {

    public static function factory()

    {

    return new Redis();

    }

    }

    $Cache = Cache::factory();

    var_dump($Cache->set());

    echo "<hr />";

    ?>

    final 不被繼承的,可以放到類或者方法的前面。


    全局空間的類,前面加上"\"。(use \Test1;)


    __autoload 當未找到引入的類,則會自動實現實例化類名的路由。


    spl_autoload_register(function($className){

    require str_replace("\\","/",$className . '.php');

    });

    替代__autoload自動加載類的方法。


    當為類里面的屬性加上“static”關鍵字后,可以直接通過類名調用。


    類的后期靜態綁定:子類中有父類的同名函數,繼承之后,若想調用子類的同名函數,則父類的方法加“static::who()”。


    魔術方法:

    __set();__get();

    __isset();判斷私有屬性(private)是否存在。

    __unset();刪除私有屬性。

    __call();調用的方法不存在時,自動調用此方法。

    __callStatic();當發現調用的靜態方法不存在時,則自動調用此方法。

    __invoke();將對象以函數方式調用。test('go...');

    __toString();直接打印對象函數。echo(test);

    __clone();將淺拷貝,變成深拷貝。

    PHP中對象的賦值是淺拷貝。深拷貝用clone。


    trait類,可以用use方法調用。


    interface接口類,不實現方法。


    abstract抽象類,既可以定義接口,又可以實現方法。


    單例模式和工廠模式:

    單例模式同一個類,不用被實例化多次,從而節省內存。

    查看全部
  • 1、類常量:const

    2、調用類常量:self::

    3、$this是對象

    4、self是類本身

    查看全部
  • 常量一經定義不可更改

    查看全部
  • 面象對象
    查看全部
  • 謝謝老師
    查看全部
  • 不同類中,同名方法可以存在

    查看全部
    0 采集 收起 來源:類的自動加載

    2019-03-21

  • 有兩個下劃線“__”表示php內置的函數

    查看全部
    1 采集 收起 來源:類的自動加載

    2019-03-11

  • 當子類方法與父類同名,子類是會覆蓋父類的方法。

    當子類沒有構造方法時,會去調用父類的構造方法,當子類有自己的構造方法,就會調用自己的構造方法。

    查看全部
  • 基本的類和對象講解演示,剛好和之前看過的PHP入門篇內容相結合,更有助于理解,生動通俗,很不錯的教學視頻。

    查看全部
  • 淺拷貝: 變量之間是地址傳遞的。
    查看全部

舉報

0/150
提交
取消
課程須知
學習該課程需要熟悉PHP語法基礎,了解PHP的基本使用
老師告訴你能學到什么?
1 對象的基本概念 2 什么是面向對象思想 3 面向對象的特性和規則 4 如何使用面向對象

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!