privateprotectedpublic

Posted 会学习的猪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了privateprotectedpublic相关的知识,希望对你有一定的参考价值。

 
private     
protected       
public
本类内     
Y Y Y
子类内     
N Y Y
外部       
N N N

 

 

 

 

 

 

 

<?php
class MyClass
{
public $public = ‘Public‘;
protected $protected = ‘Protected‘;
private $private = ‘Private‘;

function printHello()
{
echo $this->public;
echo $this->protected;
echo $this->private;
}
}
$obj = new MyClass();
echo $obj->public; // 这行能被正常执行
echo $obj->protected; // 这行会产生一个致命错误
echo $obj->private; // 这行也会产生一个致命错误
$obj->printHello(); // 输出 Public、Protected 和 Private

class MyClass2 extends MyClass
{
// 可以对 public 和 protected 进行重定义,但 private 而不能
// protected $protected = ‘Protected2‘;

function printHello()
{
echo $this->public;
echo $this->protected;
echo $this->private;
}
}


$obj2 = new MyClass2();
echo $obj2->public; // 这行能被正常执行
echo $obj2->private; // 未定义 private
echo $obj2->protected; // 这行会产生一个致命错误
$obj2->printHello(); // 输出 Public、Protected 和 Undefined

?>

 

以上是关于privateprotectedpublic的主要内容,如果未能解决你的问题,请参考以下文章

privateprotectedpublic和internal的区别

Java中privateprotectedpublic和default的区别-001

Java: privateprotectedpublic和default的区别

Java中privateprotectedpublic和default的区别

Java中privateprotectedpublic和default的区别

java中的四种修饰符:privateprotectedpublic和default的区别