<?php
class Person{
public static $type = "人类";
private $_name;
protected $_age;
public function __construct($name,$age){
$this->_name = $name;
$this->_age = $age;
}
public function walk(){
echo $this->_name." 在走路".PHP_EOL;
echo "我是:".self::$type.PHP_EOL;
}
public function speak(){
echo $this->_name." 在说话:我的年纪是: ".$this->_age.PHP_EOL;
}
}
$person = new Person("李四",10);
$person->walk();
$person->speak();
$person1 = new Person("张三",11);
$person1->walk();
$person1->speak();
?>
运行以上程序,会输出如下内容:
李四 在走路
我是:人类
李四 在说话:我的年纪是: 10
张三 在走路
我是:人类
张三 在说话:我的年纪是: 11
由以上可知:定义一个类,需要使用class 类名{}的方式定义一个类,{}里放这个类的属性,比如年龄$_age,姓名$_name,这个类能执行的操作(操作也就是函数),行走:function walk(){};说话:function speak(){};类的实例化,需要使用 new 类名(参数,参数),例如:new Person("李四",10);在类中的__construct()为构造函数,也就是new的时候,会自动执行的方法,如果这个__construct里需要参数,那么在new的时候,也需要传参过去,例如这里__construct需要传递年龄和姓名,所以,在new的时候,需要把相应的参数传递过去,否则会报错!文章源自懂站帝-http://www.sfdkj.com/13730.html
重点:$this是指的生成的对象的本身,self是指的类本身;访问对象的属性,可以使用$this->属性名,例如,在构造函数中$this->$_age = $age;表示生成的$person对象的$_age是$age,即10;生成的$person1对象的$_age是11;self是用来访问类的静态成员,即static 成员名;同样的,你也可以定义一个static的方法,同样使用self::静态方法名(),来执行静态方法名,你可以自己尝试一下!文章源自懂站帝-http://www.sfdkj.com/13730.html文章源自懂站帝-http://www.sfdkj.com/13730.html