1
A
回答
3
他们并没有真正比较,因为他们真的是不同的东西。
方法是属于一个类的函数。
class MyClass
{
public function this_is_a_method() { }
}
特征是一种在类之间共享代码的方法。一个特征不能被实例化,而是包含在另一个类中。类和特征都可以定义方法。
trait MyTrait
{
public function this_is_a_method() { }
}
既然我有这个特质,我可以更新MyClass
来使用这个特质。
class MyClass
{
use MyTrait;
}
您可以将特征看作复制和粘贴。现在MyClass
复制MyTrait
中定义的方法,以便您可以执行此操作。
$class = new MyClass();
$class->this_is_a_method();
这两种方法和特征都是PHP的特性。外墙是Laravel的一个特色。门面只是简单的语法糖,以帮助从容器中获得服务。
+0
干杯@jfadich快速解释!说得通! – awindsurfer
相关问题
- 1. 抽象与外观有什么区别?
- 2. 材质和质感有什么区别?
- 3. Seq.iter vs - 有什么区别?
- 4. |有什么区别? vs. ||
- 5. 方法firstObject vs objectAtIndex的用法有什么区别:0?
- 6. 为什么Scala没有从特质识别方法
- 7. sjlj vs dwarf vs seh有什么区别?
- 8. 算法和方法有什么区别
- 9. 方法VS物业在C#中 - 有什么区别
- 10. jQuery serialize()方法vs JSON.stringify()有什么区别?
- 11. 在Laravel中使用过滤器的方法 - 有什么区别
- 12. 有什么区别的index.php VS在laravel index.blade.php?
- 13. 'remove'和'removeChild'方法有什么区别?
- 14. Html.Partial和Html.Action方法有什么区别?
- 15. 这两种方法有什么区别
- 16. browser.sleep()和browser.wait()方法有什么区别?
- 17. 各种HTTP方法有什么区别?
- 18. KineticJS绘制方法有什么区别?
- 19. 这些np.linalg.norm方法有什么区别
- 20. 方法`toHaveBeenCalled()`和`andCalledThrough()`有什么区别?
- 21. 'configure'和'configureGlobal'方法有什么区别?
- 22. url_for方法有什么区别?
- 23. bcrypt()和crypt()方法有什么区别?
- 24. GET和POST方法有什么区别?
- 25. UrlHelper.Route和UrlHelper.Link方法有什么区别?
- 26. nibNameOrNil和ViewDidLoad方法有什么区别?
- 27. 方法和协议有什么区别
- 28. 协作过滤与协作质量过滤有什么区别?
- 29. 静态方法调用vs委托方法调用有什么区别?
- 30. npm 3 vs Bower有什么区别?
非常广泛的问题......你能精确吗? – slick
我的意思是像一个范围 - 使用情况等在我的例子中,我试图了解为什么会使用通知方法vs通知特征vs可通知门面例如 – awindsurfer
这不是Laravel特定的。这是基本的PHP概念。 – apokryfos