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来调用。
转载于:https://blog.51cto.com/lengai/1193245