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属性需要些个共有方法去访问
原文地址:https://www.cnblogs.com/luowen/p/2762222.html