欢迎来到站长教程网!

PHP教程

当前位置: 主页 > 网络编程 > PHP教程

PHP面向对象 封装与继承

时间:2017-11-23 13:23:31|栏目:PHP教程|点击:

PHP封装三个关键词:
一、public 公有的,被public修饰的属性和方法,对象可以任意访问和调用
二、private 私有的,被private修饰的属性和方法,只能在类内部的方法可以进行调用,或者被子类重写后用public才可以随意调用
三、protected 受保护的,被protected修饰的属性和方法,在父类和子类的方法都可以访问调用,不支持对象外部访问调用
PHP继承概念
PHP子类可以通过extends继承父类的属性和方法,再原有基础上添加或者重写属性方法,注意:PHP是单继承,即一个父类只能有一个子类,如果想一个父类被多个子类继承,需要使用接口。
一、子类继承父类的属性和方法,并非全部,被private修饰的方法和属性无法继承
二、子类方法或属性名如果与父类方法名一致,则进行了对远方法和属性的重写
三、关键词final 修饰的类名或方法无法被继承或重写
代码:
  <?php
  header("Content-type:text/html;charset=utf-8");
  error_reporting(E_ALL);
  class people{
  public $name;
  public $age;
  public function __construct($name,$age){
  $this->name = $name;
  $this->age = $age;
  }
  public function tellname(){
  echo '我的名字是'.$this->name;
  }
  private function tellage(){
  echo '我是年龄是'.$this->age;
  }
  }
  $zhangsan = new people('张三',20);
  $zhangsan->tellname();//输出成功
  //$zhangsan->tellage();提示致命错误
  echo "<br>";
  class student extends people{
  public $class;
  public $sex;
  public function tellname(){
  echo '大家好,我的名字是'.$this->name;
  }
  public function tellage(){
  echo '我的岁数是'.$this->age;
  }
  }
  $xiaoming = new student('小明',15);
  $xiaoming->tellname();//输出成功
  $xiaoming->tellage();//重写后输出成功
  ?>

上一篇:PHP 7安装使用体验之性能大提升,兼容性强,扩展支

栏    目:PHP教程

下一篇:暂无

本文标题:PHP面向对象 封装与继承

本文地址:https://demoall.kuaituiyun.cn/16864/wangluobiancheng/PHPjiaocheng/174.html

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:88888888 | 邮箱:88888888@qq.com

Copyright © 2002-2023 某某站长教程网 版权所有粤ICP备xxxxxxxx号