基类:
abstract class Challenge
{
abstract **static** public function getName();
}
现在有两个类:
class ChallengeType1 extends Challenge
{
public **static** function getName()
{
return 'Swimming';
}
}
class ChallengeType2 extends Challenge
{
public **static** function getName()
{
return 'Climbing';
}
}
大家可能都知道,我们不能使用static
,但这是合理的。所以我不能那样做:例如,我有类名,所以我想知道它的名字:ChallengeType2::getName();
- 它会失败!首先我应该构造对象 - 看起来没有必要(更不用说,这个类有什么非常复杂的初始化?)