打印本页
%09 %120 %2014 %09:%五 %AM

PHP接口的使用

作者
给本项目评分
(0 得票数)

本文将简单的介绍PHP中如何使用Interfac关键词.

 

1、接口的定义:

 接口:一种成员属性为抽象的特殊抽象类,在程序中同为规范的作用


2、其实他们的作用很简单,当有很多人一起开发一个项目时,可能都会去调用别人写的一些类,那你就会问,我怎么知道他的某个功能的实现方法是怎么命名的呢,这 个时候PHP接口类interface就起到作用了,当我们定义了一个接口类时,它里面的方式是下面的子类必须实现的,比如 :

<?php
	interface  subject 
	{
		public	function registerObserver( observer $o); //注册为观察者
		public	function removeObserver( observer $o);  //删除观察者
		public	function notifyObservers();  //通知观察者
	}
	
	interface observer
	{
		public	function update(); //更新
	}
?>

   
我声明一个subject接口类,定义了三个方法:注册为观察者(registerObserver),删除观察者(removeObserver),通知观察者(notifyObservers),那么继承此类的所有子类都必须实现这3个方法少一个都 不行,如果子类没有实现这些话,就无法运行。实际上接口类说白了,就是一个类的模板,一个类的规定,如果你属于这类,你就必须遵循我的规定,少一个都不 行,但是具体你怎么去做,我不管,那是你的事,如:

class contentSubject implements subject
	{
		private $observers=array();//用于记录所有观察者的变量
		public function contentSubject()
		{
			echo "subject ok<br />";
		}
		
		public function registerObserver(observer $o)
		{
			array_push($this->observers ,$o); //将观察者放到数组中
		}
		
		public function removeObserver( observer $o)
		{
			unset( $this->observers[array_search($o,$this->observers) ]);//删除一个观察者
		}
		
		public function notifyObservers() //通知所有的观察者
		{
			foreach ($this->observers as $observer)
			{
				$observer->update();
			}
		}
	}

 

结论 : PHP接口类interface就是一个类的领导者,指明方向,子类必须完成它指定方法。这样不同的开发者就不要去了解别人怎么命名相应的方法。

注:本文参考别人的总结写出。有一些话觉得说得很透彻,就直接引用了。

阅读 6662 次数