目次
phpのpublic、protected、privateの3つのアクセス制御モードの違い、protectedprivate
phpのpublic、protected、privateの3つのアクセス制御モードの違い" >phpのpublic、protected、privateの3つのアクセス制御モードの違い
ホームページ バックエンド開発 PHPチュートリアル PHP の 3 つのアクセス制御モード (パブリック、プロテクト、プライベート) の違い、protectedprivate_PHP チュートリアル

PHP の 3 つのアクセス制御モード (パブリック、プロテクト、プライベート) の違い、protectedprivate_PHP チュートリアル

Jul 13, 2016 am 10:03 AM
修飾子

phpのpublic、protected、privateの3つのアクセス制御モードの違い、protectedprivate

phpのpublic、protected、privateの3つのアクセス制御モードの違い

public: パブリックタイプ

サブクラスでは、self::var を介してパブリック メソッドまたはプロパティを呼び出し、parent::method を使用して親クラスのメソッドを呼び出すことができます

インスタンスでは $obj->var を通じてパブリック型のメソッドやプロパティを呼び出すことができます

protected: 保護されたタイプ
でも、

インスタンス内の $obj->var を介して保護された型のメソッドやプロパティを呼び出すことはできません

private: プライベート型
この型の属性またはメソッドは、このクラスでのみ使用できます。プライベート型の属性とメソッドは、このクラス、サブクラス、またはサブクラスのインスタンスで呼び出すことはできません


2. self とparent の違い
a) これら 2 つのオブジェクトはサブクラスでよく使用されます。それらの主な違いは、self は親クラスの public または protected プロパティを呼び出すことができますが、parent は呼び出すことができないことです

b).self:: 現在のクラスの静的メンバー (メソッドとプロパティ) を表します。$this とは異なり、$this は現在のオブジェクトを参照します

添付コード:

/**
*parent 親クラスではパブリックメソッドまたはプロテクトメソッドのみを呼び出すことができますが、親クラスの属性を呼び出すことはできません
* self プライベートタイプのメソッドと属性を除く親クラスのすべてのデータを呼び出すことができます
*/
class User{
public $name;
private $passwd;
protected $email;    
public function __construct(){
//print __CLASS__." ";
$this->name= 'simple';
$this->passwd='123456';
$this-> ;email = 'bjbs_270@163.com';
}
public function show(){
print "good ";
}
public function inUserClassPub lic() {
print __CLASS__.'::'。 __FUNCTION__." ";
}
protected function inUserClassProtected(){
print __CLASS__.'::'.__FUNCTION__." ";
}
プライベート 関数 inUserClassPrivate(){
print __CLASS__.':: '.__FUNCTION__." ";
}
}

class simpleUser extends User {
public function __construct(){
//print __CLASS__." ";
parent::__construct();
}

public function show(){
print $this->name."//public ";        
print $this->passwd."//private ";
print $this->email."//protected ";
}

public function inSimpleUserClassPublic () {
print __CLASS__。 '::'.__FUNCTION__." ";
}

保護された関数 inSimpleUserClassProtected(){
print __CLASS__.'::'.__FUNCTION__." ";
}

プライベート 関数 inSimpleUserClassPrivate() {
print __CLASS__.'::'.__FUNCTION__." ";
}
}

class adminUser extends simpleUser {
protected $admin_user;
public function __construct(){
//print __CLASS__." ";
parent::__construct();
}

public function inAdminUserClassPublic(){
print __CLASS__.'::'.__FUNCTION__ ." ";
}

inADMINUSERCLASSPROTECTED(){
プリント__class __。 '::' .__ function__。 "";
}

クラス管理者は adminUser を拡張します {
public function __construct(){parent::__construct();
}
}

/**
* クラスのインスタンスでは、インスタンス化を通じて呼び出せるのはパブリック プロパティとメソッドのみです
*/
$s = 新しい管理者( );
print '-------------------';
$s->show();
?>


http://www.bkjia.com/PHPjc/969249.html
www.bkjia.com
tru​​e
http://www.bkjia.com/PHPjc/969249.html

技術記事

PHPにおけるpublic、protected、privateの3つのアクセス制御モードの違い、protectedprivate PHPにおけるpublic、protected、privateの3つのアクセス制御モードの違い public: public型はサブクラスにある...

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Java アクセス制御修飾子とは何ですか? Java アクセス制御修飾子とは何ですか? Sep 20, 2023 pm 02:43 PM

Java アクセス制御修飾子とは何ですか?

Javaインターフェースの修飾子は何ですか? Javaインターフェースの修飾子は何ですか? Jul 03, 2023 am 10:46 AM

Javaインターフェースの修飾子は何ですか?

ユーザー対話エクスペリエンスを最適化するための Vue 3 のイベント ハンドラーと修飾子 ユーザー対話エクスペリエンスを最適化するための Vue 3 のイベント ハンドラーと修飾子 Sep 08, 2023 am 11:00 AM

ユーザー対話エクスペリエンスを最適化するための Vue 3 のイベント ハンドラーと修飾子

PHP パーミッション コントロール修飾子の詳細な説明: 一般的に使用されるパーミッション コントロール修飾子の包括的な理解 PHP パーミッション コントロール修飾子の詳細な説明: 一般的に使用されるパーミッション コントロール修飾子の包括的な理解 Jan 19, 2024 am 10:37 AM

PHP パーミッション コントロール修飾子の詳細な説明: 一般的に使用されるパーミッション コントロール修飾子の包括的な理解

PHP パーミッション制御修飾子の秘密を明らかにする: 実践的なアプリケーションでの使用スキルをマスターする PHP パーミッション制御修飾子の秘密を明らかにする: 実践的なアプリケーションでの使用スキルをマスターする Jan 19, 2024 am 10:06 AM

PHP パーミッション制御修飾子の秘密を明らかにする: 実践的なアプリケーションでの使用スキルをマスターする

PHP 権限制御修飾子の概要: さまざまな権限修飾子の使用法と相違点の概要 PHP 権限制御修飾子の概要: さまざまな権限修飾子の使用法と相違点の概要 Jan 19, 2024 am 10:28 AM

PHP 権限制御修飾子の概要: さまざまな権限修飾子の使用法と相違点の概要

PHP パーミッション コントロール修飾子のトラブルシューティング: パーミッション コントロール修飾子の理解を深め、適用するのに役立つよくある質問への回答 PHP パーミッション コントロール修飾子のトラブルシューティング: パーミッション コントロール修飾子の理解を深め、適用するのに役立つよくある質問への回答 Jan 19, 2024 am 09:34 AM

PHP パーミッション コントロール修飾子のトラブルシューティング: パーミッション コントロール修飾子の理解を深め、適用するのに役立つよくある質問への回答

PHP パーミッション制御修飾子の分析: さまざまな修飾子の特性と機能の詳細な分析 PHP パーミッション制御修飾子の分析: さまざまな修飾子の特性と機能の詳細な分析 Jan 19, 2024 am 10:43 AM

PHP パーミッション制御修飾子の分析: さまざまな修飾子の特性と機能の詳細な分析

See all articles