
$this->logger 不是 null,即正常的,$this->logger = PrintLogger;
反之是 $this->logger 是 null, $this->logger = NullLogger;
定义: 返回一个对象或 null 应该用返回对象或者 NullObject 代替
通俗点: 返回一个 null,用 NullObject 代替。 返回对象,那就返回原本对象。
那篇文章不看他的测试,我都有点懵逼在讲什么。
你也看看我的, 空对象模式(Null Object),
比较俗。
都说是「空对象」模式了,就不会出现NULL的情况。什么情况下都不会出现 $this->logger 没有设置的情况。「空对象」和「NULL」不是一个东西,「空对象」本身还是一个对象,一个 object。而「NULL」就是 null。

$this->logger 不是 null,即正常的,$this->logger = PrintLogger;
反之是 $this->logger 是 null, $this->logger = NullLogger;
定义: 返回一个对象或 null 应该用返回对象或者 NullObject 代替
通俗点: 返回一个 null,用 NullObject 代替。 返回对象,那就返回原本对象。
那篇文章不看他的测试,我都有点懵逼在讲什么。
你也看看我的, 空对象模式(Null Object),
比较俗。

关于 LearnKu
推荐文章: