Ant*_*ing 3 php oop overriding class-constants
如果我的类结构的值可以是true或false,那么不会改变,当前实现为变量会更好地将它们更改为常量,例如:
class Parent {
const BOOL_CONST = false;
...
}
class SomeChild extends Parent {
const BOOL_CONST = true;
...
}
Run Code Online (Sandbox Code Playgroud)
后来我有一个对象,可以是该类层次结构中的任何类型,父项或其子项之一,并且某些子项可能像"SomeChild"一样将值重载为true.
有没有办法在不知道课程的情况下访问常量?换句话说,我可以这样做:
$object->BOOL_CONST
Run Code Online (Sandbox Code Playgroud)
或者将这些值保留为变量会更好,即使它们真的不应该改变?
UPDATE
我已经对上面的问题进行了重写,以便更好地表达我试图提出的问题.
有没有办法在不知道课程的情况下访问常量?换句话说,我可以这样做:
是的,为了引用常量,您将需要使用以下构造:
顺便说一下,你使用了"超载"一词; 但是,我相信你的意思是说"被覆盖".重载在面向对象语言中具有不同的语义含义.