类中接口的应用
接口:一种成员属性全部为抽象的特殊抽象类,在程序中同为规范的作用
抽象类:1、类中至少有一个抽象方法。2、方法前需要加abstract
接口: 1、类中全部为抽象方法,抽象方法前不用加abstract. 2、接口抽象方法属性为public 3、成员属性必须为常量。
相同点:本身都不能被实例化,只能被继承或引用。继承或引用后,需要把所有抽象方法重载后方可使用。
继承(extends)只能是单一性,而接口可以使用implements进行引用。多个引用用逗号分开。
设已有接口 demo , demo2 , demo3
1、普通类引用接口例子:
class mypc implements demo , demo2 , demo3{
……
}
2、抽象类引用接口例子:
abstract class mypc implements demo , demo2 , demo3{
……
}
3、继承父类并且引用接口例子:
class mypc extends root implements demo , demo2 , demo3{
……
}
先继承后接口,单继承多接口
4、接口与接口继承:
interface demo3 extends demo{
……
}
View Code
<?php interface demo{ const NAME="行色匆匆"; function fun1(); function fun2(); } interface demo2{ function fun3(); function fun4(); } interface demo3{ const PLAY ="播放"; function fun5(); } class mypc implements demo,demo2{ function fun1(){ echo "fun1 cotent<br/>"; } function fun2(){ echo "fun2 cotent<br/>"; } function fun3(){ echo "fun3 cotent<br/>"; } function fun4(){ echo "fun4 cotent<br/>"; }//重载所引用接口的所有方法 } //单继承多接口,先继承后引用 class PC extends mypc implements demo3{ function fun5(){ echo "fun5的内容<br/>"; } } $p=new mypc; $p2=new PC; $p->fun1();$p->fun3(); echo "<br/>".mypc::NAME; echo "<br/>".PC::PLAY; ?>