欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

深入理解php类与构造函数解析

程序员文章站 2022-03-08 10:10:56
...
关于类大家都有一定的认识这里只介绍在php中类值得注意的地方

----类的创建----

php使用关键字class创建一个类,并且使用一对大括号
如:


class name{
  public $n="";
  private $u="";

  public function name() {
    $n="233";
    $u="23333";
  }

  public function rename($newn){
     $this->n=$newn;//this表示这个类
  }
}

结尾不打分号。则$n,$u为字段;name()为构造函数(construct()也可定义构造函数,详见下文),可以为字段赋值;rename()为方法。

----字段----

比较
$obj=new name();
echo $obj->n;

$obj=new name();
echo $obj->u;

前者可执行,后者不可因为$u前声明了私有private。这一点是与c++类似的。

代码:

public static $nm ="2333333333333333" ;

为函数申明了一个静态字段。
通过类名与::可以直接访问该变量

echo name::$nm;

这一点也是与c++类似的。

php中还可以通过 self::+$+变量名 在类中访问静态字段,这时self相当于$this->

方法的使用与字段类似


----构造函数----

在php5和早期版本中构造函数与类同名

在php5和之后的版本中魔术字 construct() 可定义构造函数

魔术字 construct() 可定义构造函数

class name{
  public $n="";
  private $u="";

  public function construct() {
    $n="233";
    $u="23333";
  }

  public function rename($newn){
     $this->n=$newn;
  }
}

构造函数可有参数

construct($name="",$sex="man",$age=0){}

在申明对象时

$obj= new name("我","man",28);

如果没有给出参数,则默认为=后的值。

以上就是深入理解php类与构造函数解析的详细内容,更多请关注其它相关文章!