inte***ce 介面名
class 類名 implements 介面名,
}
1.介面通過inte***ce關鍵字宣告
2.介面中只能宣告常量和未實現的方法(只有方法體沒有具體的實現),並且訪問許可權必須是public
3.介面不能進行例項化,只能通過類實現,乙個類可以實現多個介面使用,隔開
4.乙個類實現介面就必須將實現介面中宣告的所有方法
5.示例:
<?php
inte***ce
iperson
class
member
implements
iperson
public
function
money()
}
abstract
class 抽象類名
//定義類方法
abstract
function 抽象方法名();
//定義抽象方法
}class 類名 extends 抽象類名
}
1.抽象類使用abstract關鍵字宣告
2.只能作為父類被繼承,不能例項化使用
3.抽象類可以包含普通成員,但必須包含乙個抽象方法
4.抽象類中的抽象方法必須被子類實現
5.示例:
<?php
abstract
class
onepublic
function
getname()
abstract
function
say();
}class
twoextends
one}
$two
=new
two();
$two
->
say(
);
class 類名
}類名:
:$屬性名;
//訪問類的靜態屬性
類名::方法名();
//訪問類的靜態方法
1.新增static關鍵字,就可以將成員定義為靜態成員
2.在靜態方法中只能訪問靜態成員
3.示例:
<?php
class
demo
}demo:
:change()
;echo'';
demo:
:change()
;
//建立命名空間
namespace 空間名稱;
class 類名
function 函式名()或
namespace 空間名稱
function 函式名()}
namespace
//全域性命名空間
//訪問命名空間下的類或函式
\命名空間\類名;
\命名空間\函式名(
);
1.命名空間使用namespace關鍵字定義
2.命名空間必須寫在第一行,之前不能有任何**
3.當前的命名空間找不到某個函式或常量時,會自動到全域性的命名空間進行查詢
<?php
namespace
one}
namespace
two}
namespace
1.mvc分為:model(模型),負責運算元據表資料;
2.controller(控制),負責響應使用者請求、準備資料;
3.view(檢視),負責渲染資料,通過html方式呈現給使用者;
controller.php
<?php
namespace
mvc;
require_once
'model.php'
;require_once
'view.php'
;class
controller
public
function
show()
}$model
=new
model()
;$view
=new
view()
;$controller
=new
controller
($view
,$model);
$controller
->
show()
;
model.php
<?php
namespace
mvc;
class
model
}
view.php
<?php
namespace
mvc;
class
view
}else
echo'';
}}
php介面 抽象類
定義為抽象的類不能被例項化。任何乙個類,如果它裡面至少有乙個方法是被宣告為抽象的,那麼這個類就必須被宣告為抽象的。抽象類可以沒有抽象方法,但是抽象類依然不能被例項化 被定義為抽象的方法只是宣告了其呼叫方式 引數 不能定義其具體的功能實現。如abstract class abstractclass a...
介面與抽象類
介面與抽象類區別 個人總結 語法結構 1 型別可以繼承多個介面,但是只能繼承乙個抽象類,即不支援多重繼承。2 介面可以用於值型別和引用型別,例如struct和class,而抽象類不能用於值型別,只能用於引用型別。3 抽象類定義可以包括建構函式,字段資料,非抽象成員 具體實現 等,而介面只能包括抽象成...
介面與抽象類
抽象類 當抽象類作為父類時,他的子類對其中的抽象類方法有不同的方法體 簡單舉例為 classhorse mammal,ilangbound public int numeroflegs return 4 inte ce ilandbound int numberoflegs 介面例子 main函式 ...