Skip to content

Instantly share code, notes, and snippets.

@suziewong
Last active July 10, 2017 06:37
Show Gist options
  • Save suziewong/4371633 to your computer and use it in GitHub Desktop.
Save suziewong/4371633 to your computer and use it in GitHub Desktop.
public、protected、private三种访问控制模式的区别? 1.PHP
<?
class a{
protected $c;
public function a(){
$this ->c=10;
}
}
class b extends a
{
public function print_data(){
return $this->c;
}
}
$b=new b();
echo $b ->print_data();
///答案是 10
?>

public: 公有类型

    在子类中可以通过self::var调用public方法或属性,parent::method调用父类方法

    在实例中可以能过$obj->var 来调用 public类型的方法或属性      protected: 受保护类型

    在子类中可以通过self::var调用protected方法或属性,parent::method调用父类方法
    在实例中不能通过$obj->var 来调用  protected类型的方法或属性

private: 私有类型

    该类型的属性或方法只能在该类中使用,在该类的实例、子类中、子类的实例中都不能调用私有类型的属性和方法
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment