【发布时间】:2011-04-12 12:01:19
【问题描述】:
所以,我尝试谷歌这个但不知道这种情况叫什么......
我正在第一次使用类继承,其中一个父类定义一组方法,然后其他几个类扩展该父类。
我想知道的是,有没有可能做这样的事情:
class foo {
private bar = false;
private baz = NULL;
}
现在假设我有:
class foobar extends foo { }
我希望能够在“foo”中有一个条件,即如果任何类扩展“foo”并设置“bar = true”,则必须设置“baz”(即不为空),否则抛出异常。
这样的事情可能吗?
【问题讨论】:
-
Waitasecond... 如果变量声明为
private,则继承的类无论如何都无法访问它们。那么这有什么意义呢? -
如果您在父级中定义 getter 和 setter,它们确实可以访问,或者您可以将它们更改为受保护。这样做的目的是为了让一些东西万无一失。基本上我有一个父母有很多有用的“幕后”东西,我希望使用代码的人扩展它而不是使用它或直接编辑它,我正在尝试创建一个场景如果他们想要启用某个功能(bar = true),那么如果他们不包含所需的信息(baz != null),他们会收到一个非常具体的错误消息。
标签: php class inheritance