2015-04-26 derekchan
这两个星期,朋友结婚、公司活动、任务、岗位线座谈会,忙得不可开交,趁着周末,让自己闲下来写篇博文。回想起我在看设计模式的时候,经常看到书上经常会用到静态类和接口,但却不了解抽象类和接口的区别,俗话说,不了解透彻就无法运用到实际场景上(PS:这俗话当然是我自己编的~_~),那它们两者的区别在哪呢? 继续阅读 »
2016-10-13 曹强
php
简介 对于编程来说,对事物的抽象是一个老生常谈的话题,抽象问题更利于面向对象编程以及程序设计模式。 和C/C++,Java,Python等语言一样,PHP也支持面向对象,但是又有略微区别,如PHP支持在接口中定义常量,但是不支持抽象变量。 抽象/Abstraction 对事物的抽象是指,区别两个不同事物之间的本质特征,这两个事物应该在某个视角上有明确的区分界限。 如,鲸鱼和鲤鱼,这两个事物在动物的视角上,有明确的区分界限,属于不同的动物;但是在水生动物的视角上,他们属于同一种动物的抽象。 合理的对问题进行抽象,构造模型,将更容易通过编程来解决问题。 记住:抽象是编程解决问题的基础,越复杂的问题,越需要一开始就对问 继续阅读 »
2016-10-13 曹强
php
简介 在[PHP设计模式(二):抽象类和接口][2]以及[PHP设计模式(三):封装][3]中,我们已经见过继承,也就是extends关键字。 和C/C++,Java,Python等语言一样,PHP也支持继承,而且和其他语言没有什么区别。 继承/Inheritance 还是用动物、鲸鱼和鲤鱼来举例: abstract class Animal { protected $name; protected function chew($food) { echo $this-name . " is chewing " . $food . ".\n"; } protected function diges 继续阅读 »
2016-10-13 曹强
php
Introduction 在[PHP设计模式(四):继承][2]中我们介绍了继承,利用extends来进行程序设计的方法。 在[PHP设计模式(二):抽象类和接口][3]中我们介绍了接口,事实上也存在利用interface的程序设计方法,那就是多态。 和C/C++,Java,Python等语言一样,PHP也支持多态。多态更多是是一种面向对象程序设计的概念,让同一类对象执行同一个接口,但却实现不同的逻辑功能 。 多态/Polymorphism 还是用动物、鲸鱼和鲤鱼来举例: interface IEat { function eatFish(); function eatMoss(); } class Wha 继续阅读 »