PHP 中的修饰符:public 、protected 、private

 

<?php

  /*  

燕十八 公益PHP培训  

课堂地址:YY频道88354001  

学习社区:www.zixue.it  

PHP 中的修饰符:public 、protected 、private

1、在任何地方都可以访问public属性和方法

2、可以在当前类或子类中访问protected方法和属性,其他外部代码无权访问

3、只能在当前类中才能访问private方法和属性,即使在子类中也不能访问

*/

	class Pepole{

		public $name="谁";

		private $age="??";

		protected $salary="??";

		public function __construct(){

			echo "出生了!";

		}

		public function am(){

			echo "我是一个人!";

		}

		private function smile(){

			echo "微笑!";

		}

		protected function cry(){

			echo "我哭了!";

		}

	}

	class student extends Pepole{

		protected $spac="我很特别!";

		public function getSmile(){

			$this->smile();

		}

		public function getCry(){

			$this->cry();

		}

		public function getSpace(){

			return	$this->spac;

		}

		public function getSalary(){

			return	$this->salary;

		}

	}

	$me=new student();

	echo $me->name;//输出"谁" 说明public可以访问到

	echo $me->age;//报错,私有属性外部访问不了

	echo $me->salary;//报错,保护的属性外部也是访问不到;

	$me->am();//输出我是一个人;(说明了public方法可以继承)

	$me->smile();//报错,私有方法外部访问不了;

	$me->cry();//报错,保护属性外部访问不了.



	$me->getSmile();//报错;私有属性继承了,但是没法用,可以理解不能被继承;

	$me->getCry();//输出"我哭了" 说明protected方法继承下来了

	$me->spac;//报错,保护属性外部访问不了

	$me->getSalary();//输出"??" 说明protected属性继承下来了!

	$me->getSpac;//protected属性需要些个共有方法去访问

 

你可能感兴趣的:(protected)