物件導向常用變數以及引數 作用 (一)

2021-09-08 20:17:12 字數 1842 閱讀 9164

//魔術方法

補充 忘記兩個 

//構造方法 

1 方法名稱與類名稱相同的方法

2 __construct(推薦使用 優先選擇)

3 引數 : 不定 

4 觸發時機 

當物件new例項化的一瞬間自動呼叫這個方法 

作用 :隊成員進行初始化的操作 

//析構方法 

1 方法名稱為 __destruct 

2 引數:無 

3 觸發時機:

當物件銷毀的一瞬間自動呼叫析構方法 

作用:做程式的後續操作  

__set 

引數:兩個(第乙個屬性名稱 第二屬性值)

觸發時機:  

黨對私有的成員屬性 受保護的成員屬性賦值餓時候   未定義的成員屬性進行賦值的時候會自動呼叫  並且將成員屬性的名稱傳遞給第乙個引數 將成員屬性要付的值傳遞給第二從引數

作用:對私有的 受保護的 未定義的成員屬性進行賦值控制

__get

引數:乙個(接收要取值的屬性名稱)         

觸發時機: 對私有的 受保護的 未定義的成員屬性進行取值操作的時候會自動呼叫  並且將成員屬性名稱傳遞給該方法 

作用:對私有的受保護的 未定義的成員屬性進行取值控制 

__isset

引數:乙個(屬性的名稱)    

觸發時機:對私有的未定義的受保護的成員屬性__isset或者是empty函式進行判斷的時候 自動呼叫 

作用: 對私有的 受保護的 未定義的 成員屬性進行isset 或者是empty判讀的控制 

注意:會有返回值 true  false;   

個人感想:__isset  這個函式 給受保護的還有私有的時候 想要拿到必須使用return true      不然直接false  return true     在empty的時候就是必須為空啦 不能再去有值了 

__unset:

引數:乙個 (接受屬性名稱);

觸發時機:當對私有的受保護的成員屬性進行unset銷毀的時候自動呼叫 並且降屬性名稱已第乙個引數進行形式傳遞 

作用:對私有的 受保護的成員屬性進行unset控制

__clone()

引數:無

觸發時機:

當在使用clone物件的一瞬間自動呼叫 

作用:通常情況下 是將轉殖出的物件進行微調 原物件不會被影響 

tostring();

引數: 無    

觸發時機:當echo物件的時候  自動呼叫本方法 

作用: 只是為了更好的操作本物件 

注意:本方法一定要返回字串型別的值 

__call()

引數:兩個(第乙個是呼叫方法的名稱 第二個實際引數的陣列) 觸發時機:當呼叫乙個不存在的成員方法時候自動呼叫 並且會將方法的名稱傳遞給第乙個引數 會將方法的實際引數傳遞給第二名稱 

作用: 避免程式報錯 影響後續**執行       

__autoload()

引數:乙個(類的名稱)

觸發時機:  當要使用(繼承父類 例項化)乙個不存在的類的時候自動呼叫這個函式 並且會將不存在的類名傳遞給引數 

作用: 幫助我們載入類檔案 不需要考慮載入順序問題    

__sleep()

引數:無 

觸發時機:當物件序列化serialize的時候自動呼叫該方法 

作用:讓使用者可以可以自定義選擇要序列化的成員屬性 

注意:該方法一定要返回陣列型別的值,陣列元素的值及為成員屬性的名稱 

__wakeup()

引數: 無 

觸發時機: 當物件進行反序列化unserialize操作的時候自呼叫 

作用:當反序列化物件的時候 使物件當中的成員發生改變 

物件導向常用變數以及引數 繼承 作用 (二)

什麼時候使用繼承 1 在功能進行擴充套件的時候進行繼承 2 在功能進行修改的時候 覆蓋掉 php繼承特性 1 支援單一繼承 不支援多重繼承 2 乙個子類之允許有乙個父類 3 乙個父類可以有多個子類 php 繼承關鍵字 父類 基類 超累 子類 擴充套件類 派生類 許可權問題 public 共有的 1 ...

Python函式引數傳遞以及變數作用域

使用 號,表示函式接受多個引數 def f args print args f 1 1,f 1,2,3 1,2,3 f f 1,2 1,2 使用 號,表示傳遞的是字典引數 def f1 args print args f1 a 1,b 2 3.將函式名作為引數傳遞 coding utf 8 用來支援...

python物件導向一(類和物件以及常用內建方法)

1.物件導向 需要有意義的物件導向的 不是有了類就是物件導向 核心 類 物件 方法 設計層面 函式 程式運形,過程是一種稱謂 class student name 變數 資料成員 age 0 類中的函式稱為方法 def print file self print name self.name pri...