永发信息网

PHP子类怎么调用父类的属性

答案:2  悬赏:0  手机版
解决时间 2021-05-10 07:12

class Perpon
 {
  private $Pid;
  private $Pname;
  private $Page;
  private $Psex;
  private $Pbirthday;
  public function __construct($Pid,$Pname,$Page,$Psex,$Pbirthday)//PHP5中间的构造函数
  {
   $this->Pid=$Pid;
   $this->Pname=$Pname;
   $this->Page=$Page;
   $this->Pbirthday=$Pbirthday;
   echo "创建了一个对象"."<br>";
   
  }
  public function __set($name,$value)
  {
   $this->$name=$value;
  }
  function show(){
   echo ("我的姓名:$this->Pname,我的年龄:$this->Page,我的性别是:$this->Psex,我的生日是$this->Pbirthday <br>");
  } 
  public function __get($name)
  {
   return $name;
  }
  public function dining()
  {
   echo "$this->Pname 正在吃饭 <br>";
  }
  public function shuohua()
  {
   echo "$this->Pname喜欢说话 <br>";
  }
  public function gaosu()
  {
   echo "我的姓名叫做$this->Pname <br>"; 
  }
  public function IT()
  {
   echo "$this->Pname 的工作是IT行业 <br>"; 
  }

 }
 class Student extends Perpon
 {
  public function __construct()//PHP5中间的构造函数
  {
   echo "子类的构造函数";
  }
  public function IT()//PHP5中间的构造函数
  {
   parent::IT();
   echo "$this->Pname 的工作是学生<br>"; 
   
  }
  
 }
  
 $perpon=new Perpon('1','zhangsan','18','男','9月23');
 $perpon->show();
 $perpon->dining();
 $perpon->shuohua();
 $perpon->gaosu();
 $perpon->IT();
 
 $student=new Student();
  $student->IT();
?>

 

子类的IT方法调不到父类的Pname属性

最佳答案

你设置了 private $Pname; 为私有变量 就导致了你的派生类是无法访问父类的成员


可以使用 protected $Pname 这样就可以使得派生类和基类都能范围该类的成员。 


===


你初始化$student=new Student('1','zhangsan','18','男','9月23');后 不用重载parent::IT(); 这样只能echo出父类的那句话。。你要的是覆盖的效果 所以直接echo "$this->Pname 的工作是学生<br>";  就可以了

全部回答

private只有父类自己才能使用

protected子类和父类才可以使用

如果你把子类实例化了 而没有生成父类的对象 那么你要在子类的构造函数里面 用parent调用父类的构造函数 这样才能在子类实例化的时候使用父类的 属性和函数

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
我第一次接触魔兽,关于职业和种族的选择想让
为什么赛尔号的骷髅套装会射出激光
求八神招式的名称?
淘宝上的marimo幸福海藻是正品吗?
选购笔记本电脑内存条大小跟机型有关系吗?1G
这能证明喜欢一个人吗?
解释晕车是怎么回事
SONY CD的充电电池
昆仑发动机概述
烟,为什么对男人来说是唯一的朋友?
电脑高手进来!
请问如何制作免费的qq家园
在哪里下载手机版DNF
哪位古人爱水仙?
CF有角色注销软件?
推荐资讯
GhostXP_SP2电脑公司特别版_v7.7下载地址
请高手帮我解读下下面程序语句
怀孕快五个月了肚子突然疼一会这是为什么
为什么要鉴定?
《水浒传》情节概括300字左右~~~急
汉川市孝感观音垱财鱼馆地址在哪里啊
CF里的东西在国家哀悼日会不会消耗时间?
我最近总是失眠,会不会影响我正常的生活啊
如何把好的日记发表到手机美文里?
315 的qq号是多少?
无锡一年四季的天气情况
衡阳西路39号劳动保障中心在哪啊?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?