Blogger Information
Blog 33
fans 3
comment 0
visits 22767
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
类的继承及应用20180506-12点20
MrZ的博客
Original
694 people have browsed it

一、知识点

1,自动加载技术

随着类越来越多,每次引用类文件需要使用require语句加载一个文件,比较繁琐容易出错。使用自动加载函数后只需定义类绝对路径即可,随着使用步骤自动加载类文件。

2。父类、子类继承

子类继承父类后,可以只需实例化子类即可使用父类中的属性和方法,无需实例化父类。

子类可以对父类中的方法、属性重新定义,但是常规不这么使用。为对父类中的功能进行扩展。


二、源码部分(带注释)

1.USER类

实例

<?php
/**
 * Created by PhpStorm.
 * User: zhouf
 * Date: 2018-05-06
 * Time: 11:00
 */

class User
{
   protected $id;
   protected $username;
   protected $password;

   public function __construct($id='',$username='',$password='')
   {
       $this->id=$id;
       $this->username=$username;
       $this->password=$password;
   }


   public function __get($name)
   {
     return $this->$name;

   }

   public function __set($name, $value)
   {
       $this->$name=$value;
   }

    public function user_group()
   {
       return "普通用户";
   }



}

运行实例 »

点击 "运行实例" 按钮查看在线实例


2,VIP类

实例

<?php
/**
 * Created by PhpStorm.
 * User: zhouf
 * Date: 2018-05-06
 * Time: 11:51
 */

class Vip extends User
{
    protected $vip=1;

   public function __construct($id = '', $username = '', $password = '',$vip='')
   {
       parent::__construct($id, $username, $password);

       $this->vip=$vip;
   }


    public function __set($name, $value)
    {
         $this->$name=$value;
    }

    public function Show_v(){
     return "子类VIP:".($this->vip).":".parent::user_group();
 }



}

运行实例 »

点击 "运行实例" 按钮查看在线实例

首页应用及自动加载

实例

<?php
/**
 * Created by PhpStorm.
 * User: zhouf
 * Date: 2018-05-06
 * Time: 11:00
 */
//类的自动加载无需多次引用
spl_autoload_register(function ($class_name){
    require "$class_name".'.php';
});

//$a=new User("1001","zhoufan","123456");
//
//echo "用户组:".$a->user_group();
//echo "<hr>";
//echo "用户名:".$a->username;


$b=new Vip();

//设置子类属性访问子类属性
$b->vip=true;

echo $b->Show_v();

//通过子类访问父类属性;
echo "<hr>";

echo $b->user_group();


echo "<hr>";


$b->password="zzzbbbvv";

echo $b->password;

运行实例 »

点击 "运行实例" 按钮查看在线实例


Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post