首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >类返回对象混淆

问类返回对象混淆
EN

Stack Overflow用户
提问于 2012-07-28 00:02:00
回答 5查看 46关注 0票数 0

我被要求创建一个执行某些操作的类,然后返回一个具有只读属性的对象。现在我已经创建了这个类,并且所有的东西都100%的工作了,但是当他们说“返回一个只读属性的对象”的时候,我感到很困惑。

这是我的php文件的大纲,其中包含类和一些额外的调用它的行,等等:

代码语言:javascript
复制
class Book(){
 protected $self = array();
 function __construct{
  //do processing and build the array
 }

 function getAttributes(){
  return $this->self; //return the protected array (for reading)
 }
}

$book = new Book();

print_r($book->getAttributes());

我怎样才能返回一个对象或其他东西呢?

EN

回答 5

Stack Overflow用户

发布于 2012-07-28 00:05:49

您可能正在寻找关键字final。最终表示对象/方法不能被重写。

Protected意味着对象/方法只能由它所属的类访问。

由于self是保留关键字,因此您需要更改该关键字以及声明。将$self $this->self重命名为$data和$this->data

票数 1
EN

Stack Overflow用户

发布于 2012-07-28 00:04:35

self是一个PHP保留字。您必须重命名您的变量。

票数 0
EN

Stack Overflow用户

发布于 2012-07-28 00:05:16

它们所指的是具有private或protected属性的对象,这些属性只能由setters/getters访问。如果仅定义getter方法,则该属性将是只读的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11691520

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档