-2

有人可以解释以下问题的答案吗?我的讲师给出了答案;我不知道自己该如何回答。

考虑以下代码并完成表中不完整的条目:

<?php
   class Employee {
      private $name;

      function setName($name) { //<- LINE A
         if ($name == "") 
           echo "Name cannot be blank!";
         else 
           $this->name = $name;
      }

      function getName() { //<- LINE B
         return "My name is ".$this->name."<br />";
      }
   }

   class Executive extends Employee {
      function advertisingCompany() {
         echo "hi!";
      }
   }

   $exec = new Executive();//<- LINE C
   $exec->setName("Joe");
   echo $exec->getName();
   $exec->advertisingCompany();
?>  

上面的代码展示了面向对象编程的哪个特性? 继承

LINE A 中显示的函数的特殊名称是什么? 突变器/设置器

如 LINE B 所示,函数的特殊名称是什么? 访问器/获取器

如 LINE C 所示,变量 $exec 的特殊名称是什么? 对象/实例

上面代码的输出是什么?

我叫乔嗨

4

1 回答 1

2

mutator/setter 是一种允许修改(写入)对象属性的方法。

访问器/获取器是一种允许访问(读取)对象属性的方法。

这两种函数的原因是有时类指定属性是私有的或受保护的,因此外部代码无法访问。您可以通过 getter/setter 方法访问私有或受保护的属性。

对象/实例是从类创建的实际活动对象。

该代码运行两个函数,其中一个打印“Hello my name is”,另一个打印“hi!”。

于 2013-11-05T05:33:12.273 回答