1--类的作用是:降低程序耦合性,增加程序的可扩展性。减少维护成本。

2--一个类一般有他的属性和方法组成
   class person{
   protect $name;
   protect $sex;
   public function chamame()
    {echo ‘你好’;  }
}
3--当要使用一个类的时候,必须使用关键字new来实例化。 
   $xiao= new person();
   $xiao->chamame();//输出你好
4--一个类可以有一个构造函数和一个析构函数。这有别于c++。php不支持重写
   1-构造函数是什么?有什么用?
     当我们new一个类的时候,系统会自动调用他的构造函数,用于初始化。构造函数可以有参数也可以没有。默认情况 下系统的构造函数是没有写内容的。
        class person{
   protect $name;
   protect $sex;
   public function __construct($name,$sex)
    { $this->name=$name;
 $this->sex=$sex;  
     }
     }
2-析构函数是什么?有什么用?
析构函数是在销毁这个类,或者这个类没有引用(系统垃圾回收会回收他)自动调用。用来释放某些资源的。析构函数是不能传递参数的。
析构函数一般情况下是按先被系统注销的实例,最后调用析构函数(先入后出)的方式销毁的。
       class person{
   protect name;
   protect sex;
   public function __destruct()
    { echo '类快要释放了';}
5--静态变量和静态方法
    1- 静态变量存储在系统的静态区里面。这个类的所有实例都可以访问他。在类里面是通过self::和类名::来访问他们,在类外只能通过类名::来访问
2- 静态方法只能调用静态变量,无法通过$this来调用其他的变量。静态方法在类内可以通过self::和类名::来访问他们,在类外可以通过$a->和类名::来访问他们
<?php
      class person{
   public $name;
   public static $countperson;
   public function __construct()
   {
   echo self::$countperson+=1;
   }
   public static function count()
   {
    $a='------';
echo $a;
   echo self::$countperson;
   }
   }
   person::$countperson=0;  //这个是在静态区里面
   $a=new person(); //$a是存储在载里面的
   $b= new person();
   $a->name='lengai'; $b->name='lengai2';//输出分别是lengai和lengai2.他们是各自存储在不同的堆里面.
   echo $a->name;
     $a->count();   //  echo person::count();这个也是存储在静态区。其他类函数都是存储在堆区里面,普通函数是在载里面
?>
6--$this.表示指向当前对象(类似指针,指向当前对象在堆里面的地址)。在类内部是无法直接调用变量的。必须通过$this来调用。