溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

PHP 對象 抽象方法和抽象類 abstract 接口iinterface

發(fā)布時(shí)間:2020-06-28 00:12:39 來源:網(wǎng)絡(luò) 閱讀:356 作者:津沙港灣 欄目:web開發(fā)
/*
 * 抽象方法和抽象類
 * 
 * 1.什么是抽象方法
 * 定義:一個(gè)方法如果沒有方法體(一個(gè)方法,不使用{},直接使用分號(hào)結(jié)束的方法,才是沒有方法體的方法),則這個(gè)方法就是抽象方法
 * 一、聲明一個(gè)方法,不使用{},而直接分號(hào)結(jié)束
 * 二、如果是抽象方法,必須使用abstract(抽象關(guān)鍵字來修飾)
 * 2.什么是抽象類
 * 一、如果一個(gè)類中有一個(gè)方法時(shí)抽象的方法,則這個(gè)類就是抽象類。
 * 二、如果聲明一個(gè)抽象類,則這個(gè)類必須使用abstract抽象關(guān)鍵字來修飾
 * 注意:
 * 1.只要使用abstract修飾的類,就是抽象類
 * 2.抽象類是一個(gè)種特殊的類,特殊在抽象類中可以有抽象方法
 * 3.除了在抽象類中可以有抽象方法外,和正常的類完全一樣。
 * 接口是一種特殊的抽象類
 * 1.抽象類和接口中都有抽象方法
 * 2.抽象類和接口都不能創(chuàng)建實(shí)例對象
 * 3.抽象類和接口的使用意義相同 作用相同
 * 接口和抽象類相比;
 * 1.接口中的方法,必須全要是抽象方法(不能用不抽象的方法) 不需要使用abstract 直接使用分隔結(jié)束
 * 2.接口中的成員屬性,必須是常量(不能有變量)
 * 3.所有的權(quán)限必須是公有屬性(public)
 * 4.聲明接口不使用class 而是使用interface
 * 接口應(yīng)用的一些細(xì)節(jié)
 * 1.接口繼承 extends  一個(gè)接口繼承另一個(gè)接口 只有擴(kuò)展新抽象方法,沒有覆蓋的關(guān)系
 * 2.可以使用一個(gè)類來實(shí)現(xiàn)接口中的全部方法,可可以使用一個(gè)抽象類,來實(shí)現(xiàn)接口中的部分方法
 * (類與接口 抽象類與接口   覆蓋  重寫  實(shí)現(xiàn)接口中的抽象方法)
 * 3.就不要使用extends這個(gè)關(guān)鍵字,使用implements來實(shí)現(xiàn)
 * 
 * extends繼承擴(kuò)展 一個(gè)類只能有一個(gè)父類
 * 4.一個(gè)類可以在繼承另一個(gè)類的同時(shí),使用implements實(shí)現(xiàn)一個(gè)接口 也可以實(shí)現(xiàn)多個(gè)接口 (一定要先繼承,再實(shí)現(xiàn)接口)
 * 5.實(shí)現(xiàn)一個(gè)接口,必須實(shí)現(xiàn)接口中所有定義的方法,不能有任何遺漏。
 */
//抽象類
abstract class Person{
    //抽象方法
    abstract function say();
}
//接口
interface Demo{
   const NAME = '津沙港灣';
   function test();//可以省略abstract  方法必須是抽象方法 即沒有方法體{}
}

//接口繼承
interface Test extends Demo{
    
}

//類
class World{
    
}

//類實(shí)現(xiàn)接口
abstract  class WebPage extends World implements Demo{
    function  test(){
        
    }
    
}


向AI問一下細(xì)節(jié)
AI