ホームページ >バックエンド開発 >PHPチュートリアル >PHP笔记之:基于面向对象设计的详解_PHP

PHP笔记之:基于面向对象设计的详解_PHP

WBOY
WBOYオリジナル
2016-06-01 12:07:04921ブラウズ

public 表示全局,类内部外部子类都可以访问;
复制代码 代码如下:

     class Test{
         public  $name='Janking',
                 $sex='male',
                 $age=23;

         function __construct(){
             echo $this->age.'
'.$this->name.'
'.$this->sex.'
';
         }

          function func(){
             echo $this->age.'
'.$this->name.'
'.$this->sex.'
';
         }
     }

 
 $P=new Test();
 echo '

';
 $P->age=100;
 $P->name="Rainy";
 $P->sex="female";
 $P->func();
 ?>
Public

private表示私有的,只有本类内部可以使用;
复制代码 代码如下:

     class Test{
         private  $name='Janking',
                 $sex='male',
                 $age=23;

         function __construct(){
             $this->funcOne();
         }

          function func(){
             echo $this->age.'
'.$this->name.'
'.$this->sex.'
';
         }

         private function funcOne(){
             echo $this->age.'
'.$this->name.'
'.$this->sex.'
';
         }
     }

 
 $P=new Test();
 echo '

';
 $P->func();
 $P->age=100;        // Cannot access private property Test::$age
 $P->name="Rainy";   // Cannot access private property Test::$name
 $P->sex="female";   // Cannot access private property Test::$female
 $P->funcOne();      // Call to private method Test::funcOne() from context ''
 ?>
Private

protected表示受保护的,只有本类或子类或父类中可以访问; 和封装有关的魔术方法:

 __set():是直接设置私有成员属性值时,自动调用的方法

 __get():是直接获取私有成员属性值时,自动调用的方法

 __isset(); 是直接isset查看对象中私有属性是否存时自动调用这个方法

 __unset(); 是直接unset删除对象中私有属性时,自动调用的方法

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