接口:
规定一个类该怎么去写,规定一个类必须要去实现哪些方法!
抽象类是为了写一个类用于以后更细的类去扩展细化它,接口是直接规定一个类应该具有哪些方法
接口是对一个类方法的规划(把接口当成军令状)
interface 接口名称{
public function 方法名([参数]);
}
注:
1. 接口名称以 i 开头
2. 接口只定义方法
3. 接口中所有的方法必须是public
4. 接口中的方法仅仅是方法名称和参数而不包括具体实现
怎么把一个类和接口关联:
class 类名称 implements 接口名称{
}
注:
1. 如果一个类实现了接口那么这个类必须实现接口中定义的所有方法
2. 类要实现接口,必须使用和接口中所定义的方法完全一致的方式
3. 类可以实现多个接口
class 类名称 implements 接口1,接口2{
}
实现多个接口时,接口中的方法不能重复
1. 接口也可以继承其他接口
2. 接口中也可以定义常量,接口常量和类常量完全相同,但是不能被子类或子接口所覆盖
3. instanceof 可以检测一个变量是否实现一个接口
<?php
interface iA{
public function aa();
public function bb();
}
interface iB{
public function cc();
public function dd();
}
interface iC extends iA{
public function aa();
public function bb();
}
class ClassA implements iA{ //接军令状
public function aa(){
}
public function bb(){
}
}
class ClassB implements iA,iB{
public function aa(){
}
public function bb(){
}
public function cc(){
}
public function dd(){
}
}