ホームページ >バックエンド開発 >PHPチュートリアル >{{PHP}}PHP リネージ アクセス制御
{{PHP}}PHP 継承されたアクセス制御
{{PHP}}PHP 継承されたアクセス制御
継承について話すときは、アクセス制御について言及する必要があります。アクセス制御権限が異なると、継承の動作も異なります。メンバー メソッドを例に挙げると、private アクセス修飾子と protected アクセス修飾子を使用して、何を継承する必要があるかを制御できます。
private メンバーがプライベートとして指定されている場合、そのメンバーを継承することはできません。実際、このメソッドは PHP に継承されますが、アクセスすることはできません。
protected メンバーが protected として指定されている場合、そのメンバーはクラスの外部には表示されず、継承することができます。
PHP の例を見てください:
クラスベース {
プライベート関数 privateMethod() {
}
}
クラスの子はBaseを拡張します{
パブリック関数 publicMethod() {
}
}
$c = 新しい子();
if (method_exists($c, 'privateMethod')) {
エコー 1;
}その他{
エコー 0;
}
このコードは 1 を出力します。この時点で、PHP では継承中にプライベート メソッドを継承できることが証明できます。
参照: https://github.com/billfeller/tipi/blob/master/book/chapt05/05-04-class-inherit-abstract.markdown