类的创建与声明,方法,构造函数,类的继承,方法重写,类方法,成员方法
<?php
//快速创建一个php类,对象选中php class
class Hello2
{
public function sayHello(){
echo 'hello php2-- hello2<br>';
}
public function sayHi(){
echo 'hi php2'.'<br>';
}
}
//一个文件里面可以声明多个类
class DeskTop{
public function doDesk(){
echo 'do desk<br>';
}
}
\<?php
/**
* Created by PhpStorm.
* User: lzl
* Date: 2016/6/4
* Time: 9:44
*/
//构造函数, ,只能创建一个__construct()
class Perple
{
/**
* Man constructor.
* @param $age int 年龄
* @param $name string 名字
*/
public function __construct($age,$name,$sex)
{
$this->_age = $age;
$this->_name = $name;
$this->_sex = $sex;
}
public function sayHi(){
echo "$this->_name sayHi<br>";
}
/**
* @return mixed
*/
public function getAge()
{
return $this->_age;
}
/**
* @return mixed
*/
public function getName()
{
return $this->_name;
}
private $_age,$_name,$sex;
//类方法声明,关键字static
public static function sayHello(){
echo 'hello Man static function<br>';
}
//静态属性
private static $NUM = 0;
const max_num = 100;
}
<?php
/**
* Created by PhpStorm.
* User: lzl
* Date: 2016/6/4
* Time: 10:08
*/
require_once 'Perple.php';
class Man extends Perple
{
public function __construct($age, $name)
{
parent::__construct($age, $name,'男'); //基类的构造函数
}
//重写基类的方法
public function sayHi()
{
// parent::sayHi(); // TODO: Change the autogenerated stub
echo 'Man '.$this->getName().'say hi';
}
}
<?php
/**
* Created by PhpStorm.
* User: lzl
* Date: 2016/6/4
* Time: 9:12
*/
//类的引入,创建,调用 ,构造函数,成员方法,类方法 ,类的继承与方法重写
//引入php类
require_once 'Hello.php';
require_once 'Hello2.php';
/*******************************************类的创建与调用 **********************************************/
$h2 = new Hello2();
$h2->sayHello();
$h2->sayHi();
$h3 = new DeskTop();
$h3->doDesk();
$h = new Hello(); //实例一个hello对象
$h->sayHello(); //调用对象的一个方法
echo '************************************命名空间*******************************************<br>';
require_once 'jikexueyuan/Play.php';
require_once 'jkxy/Play.php';
//创建相同名称的文件时,一定要指定命名空间namespace
$p = new \jkxy\Play();
$p->play();
$p = new \jikexueyuan\Play();
$p->play();
echo '************************************构造函数*******************************************<br>';
//创建public function __construct(){};
require_once 'Perple.php';
$m = new Perple(20,'张三','女');
echo $m->getName();
echo '************************************成员方法与类方法*******************************************<br>';
//public static function 函数名(){}
//public static 属性
Perple::sayHello(); //类方法调用
echo Perple::max_num; //静态属性访问
echo '************************************类的继承与重写*******************************************<br>';
require_once 'Man.php';
$m = new Man(12,'张三');
echo $m->sayHi();