Heim >Backend-Entwicklung >PHP-Tutorial >PHP笔记之:基于面向对象设计的详解_PHP

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

WBOY
WBOYOriginal
2016-06-01 12:07:04921Durchsuche

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删除对象中私有属性时,自动调用的方法

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn