PHP 类的访问控制与封装private修饰符

<?php
	/*
		封装就是把对象中的成员属性和成员方法加上访问修饰符,使其尽量隐藏对象的                 内部细节,以达到对成员的访问控制--切记不是拒绝访问

		private (私有的):被定义为 private 的成员,容许同一个类里的全部成员访问(调用方法是用:$this->方法名),
		但对于在该类外调用有private修饰的成员方法和在子类中调用都不容许的。
	*/
	header("Content-type: text/html; charset=utf-8"); 
	class Cooking{
		 var $food;//成员属性
		 public function eatwhat($food){
		 	//类内经过$this调用成员属性并赋值一个变量$food
		 	echo $this->food=$food;
		}

		public function operation(){
    		    //在本类中调用前有private修饰符的成员方法
			$this->first();
			$this->second();
			$this->third();
		}
		//前面有private修饰符的成员方法是为其余成员方法服务的,若是不加上private修饰符,单独在类外调用,不知道成员方法是来干吗的。
		private function first(){
			echo "我先烧开水"."<br/>";
		}
		private function second(){
			echo "而后再下面"."<br/>";
		}

		private function third(){
			echo "等面浮在水面上证实好了"."<br/>";
		}
	}
	//实例化一个对象obj
	$obj = new Cooking();
	$obj->eatwhat("面条");//在对象中调用成员方法,并给变量传一个值
	echo "<hr/>";
	$obj->operation();
	//$obj->first()在类外单独调用前有修饰符为private的成员方法是不行的。
?>
相关文章
相关标签/搜索