为什么php定义类,有函数就够了啊
为什么大部分php编程中,都定义了类,按照我的想法就是直接用function就可以了啊为什么还要把function放到class里面?这样做有什么好处?一直困惑我希望各位...
为什么大部分php编程中,都定义了类,按照我的想法就是 直接用function就可以了啊 为什么还要把function放到class里面? 这样做有什么好处?
一直困惑我 希望各位大虾详细解释 展开
一直困惑我 希望各位大虾详细解释 展开
4个回答
展开全部
估计这位朋友对面向对象了解不深,面向对象是一种思想,而不仅仅是将function放到class中。
面向对象的思想比较接近现实世界,万物皆对象,万物皆有方法,理解这个是需要一些时间的。
举个简单的例子吧,你是一个男人,男人是一个class,男人继承自人,人继承自动物。男人可以走,走是方法,也就是你说的function,人可以跳,跳也是方法,走和跳都继承自人,人继承自动物,但人和动物的走是不一样的,生物学叫进化,而面向对象里应该叫重写,人这个类重写的动物类的走的方法。男人还有不是所有的人都有的东东,也有一些是人都有的东西,这些东西叫做男人的属性。而男人这个class是一个概念,而你,是男人的一个实体。
你可以想一想,如果不用面向对象的思想,上面这些东西实现起来要多复杂?
使用面向对象有很多的好处,逻辑清晰,易于理解和维护。
建议你还是多看一些面向对象的教程,等对这个概念了解到一定程序可以阅读一些关于设计模式的书籍,一定可以对面向对象有更深的理解。
面向对象的思想比较接近现实世界,万物皆对象,万物皆有方法,理解这个是需要一些时间的。
举个简单的例子吧,你是一个男人,男人是一个class,男人继承自人,人继承自动物。男人可以走,走是方法,也就是你说的function,人可以跳,跳也是方法,走和跳都继承自人,人继承自动物,但人和动物的走是不一样的,生物学叫进化,而面向对象里应该叫重写,人这个类重写的动物类的走的方法。男人还有不是所有的人都有的东东,也有一些是人都有的东西,这些东西叫做男人的属性。而男人这个class是一个概念,而你,是男人的一个实体。
你可以想一想,如果不用面向对象的思想,上面这些东西实现起来要多复杂?
使用面向对象有很多的好处,逻辑清晰,易于理解和维护。
建议你还是多看一些面向对象的教程,等对这个概念了解到一定程序可以阅读一些关于设计模式的书籍,一定可以对面向对象有更深的理解。
展开全部
直接用 function 是可以的,但是没有把 function 放置在Class里面封装起来反应快,原因:
不封装时:当php遇到function时会拿这个函数名在自己的函数库里面找,找不到才会使用你定义的function,这之间就浪费了函数名匹配时间
封装时:直接将你的function纳入php函数库,少了一个寻找时间
不封装时:当php遇到function时会拿这个函数名在自己的函数库里面找,找不到才会使用你定义的function,这之间就浪费了函数名匹配时间
封装时:直接将你的function纳入php函数库,少了一个寻找时间
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你得先知道一些有关于面向对象的知识!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询