public protected private 三种权限区别

本文详细介绍了PHP中public、protected及private三种权限修饰符的区别与使用场景。通过具体实例展示了不同修饰符下类成员的访问控制特性,帮助读者更好地理解面向对象编程中的封装原则。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

public protected private三种权限的区别总结:

public(公有)protected(受保护)private(私有)

外部 Y N N

子类中 Y Y N
本类中 Y Y Y




<?php 


class Human {
   public $money=3000;
   protected $che='BMW';
   private $mv='kt';
   public function t1(){
   	echo $this->money;//自身内部方法调用内部public属性
   }

   public  function t3(){
   	echo $this->che;//自身内部方法调用内部protected属性
   }
   public function t5(){
   	echo $this->mv;//自身内部方法调用内部private属性
   }
}

class Stu extends Human{
	//继承human父类
	
	public function t2(){
		echo $this->$money;//子类中方法调用父类的属性
	}


	public function t4(){
		echo $this->che;//子类种方法可以调用父类中protected属性
	}

	public function t6(){
		echo $this->mv;//子类中方法不可以调用父类private属性
	}

}




$stu=new Stu();
echo $stu->money;//子类外部调用父类public属性
$stu->t1();//子类外部调用父类public方法
$stu->t2();//子类外部调用自身内的public方法
//echo $stu->$che;//子类外部不可以调用父类protected的属性
//echo $stu->$mv;//子类外部不可以调用父类private的属性
$stu->t5();//子类可以外部调用父类含有private属性的方法
//$stu->t6();//子类中不可以外部调用自身中含有父类private的属性的方法
 ?>








                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值