1)静态功能和正常功能有什么区别
虽然它们是函数,但我更喜欢将它们称为给定类的方法.一个是静态方法,另一个是实例方法.
静态方法:$item = Item :: getDetail(15);
实例方法:$item = getDetail(15);
(但是,请参阅上面评论中的FuzzyTree的正确语法.)
2)如何使用静态函数和正常函数(如果你简单的例子是好的)
静态意味着您不必实例化(声明对象引用).也就是说,您可以简单地使用该方法.因此,在您的示例中,虽然答案可能相同,但您调用该方法/函数的方式也不同,如上所述.
例如,在Java中,您拥有Math类.它不需要实例化使用,事实上你不能我所知道的,因为它的构造函数是私有的.您可以通过引用要使用的类和方法名称来简单地使用方法,
Math.pow(d1, d2); //no instantiation needed
在PHP中这可能是,
MyClass::pow(d1,d2); //no instantiation needed
3)询问静态功能和正常功能之间的性能.哪个更好?
更好的是你的设计问题.如果你每次想要使用一个数字的力量来创建一个对象,那么就会产生更多的内存,而不是直接使用该类.我没有基准证明,但它似乎合乎逻辑,因为你没有在内存中以相同的方式处理方法.除非你做了很多复杂的动作,否则我认为它在现实世界中并不重要.
也许你会感兴趣.