ホームページ  >  記事  >  バックエンド開発  >  PHP オブジェクト指向パブリック プライベート保護アクセス modifier_PHP チュートリアル

PHP オブジェクト指向パブリック プライベート保護アクセス modifier_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-20 11:16:37807ブラウズ

この記事は、PHP オブジェクト指向の public private protected アクセス修飾子についての詳細な分析と紹介です。必要な方は参照してください。 ​

PHP には 3 つのアクセス修飾子があります。すなわち、
public (パブリック、デフォルト)
保護されました
プライベート
public (public、default) PHP5 では、クラスでメンバーのアクセス修飾子が指定されていない場合、デフォルトは public アクセスです。
protected (protected) protected として宣言されたメンバーには、そのクラスのサブクラスによるアクセスのみが許可されます。
プライベート (プライベート) プライベートとして定義されたメンバーは、クラス内のすべてのメンバーに表示され、アクセス制限はありません。クラス外からのアクセスは禁止です。

イラスト

デモ

コードをコピー コードは次のとおりです。


クラスの女性{
public $name = "ガオジン";
protected $age = "22";
プライベート $height = "170";
関数情報(){
echo $this->name;
}
プライベート関数say(){
echo "これはプライベートメソッドです";
}
}
//$w = 新しい女性();
//エコー $w->info();
//echo $w->name;//パブリックプロパティにアクセスできます
//echo $w->age;// 保護された属性、致命的なエラーが報告されました
//echo $w->height;// 保護された属性、致命的なエラーが報告されました
//プライベートメソッド、アクセスエラー
//$w->say() // プライベートメソッド、アクセスエラー
; クラスの女の子は女性を拡張します{
// 親クラスのパブリック メソッドとプロテクト メソッドは再定義できますが、プライベート メソッドは定義できません
//protected $name = "jingao" // 再定義可能
; 関数情報(){
echo $this->name;
echo $this->age;
echo $this->height;
}
関数say(){
//parent::say();//プライベート メソッドは継承できません。親クラスの Say メソッドが保護されている場合、ここではエラーは報告されません
エコー「私は女の子です」;
}
}
$g = 新しい女の子();
$g->say();//通常の出力
//echo $g->height;//プライベートプロパティにアクセスできないため、結果は出力されません
//$g->info();//これは出力です gaojin22 $height はプライベートプロパティであり、継承されません
//$g->height = "12";//これは再定義され、値が割り当てられた高さ属性です
//$g->info();//したがって、ここでの出力は gaojin2212 になります

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/372377.html技術記事この記事は、PHP オブジェクト指向の public private protected アクセス修飾子についての詳細な分析と紹介です。参照が必要な方のために、PHP には次の 3 つのアクセス修飾子があります。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。