PHP的静态方法和静态属性是不是不用直接实例化直接就可以调用?

yongu 发布于 2014/08/02 19:17
阅读 1K+
收藏 0
如题。
加载中
0
卖红薯
卖红薯
静态方法在读到这个类或者引入这个类文件的时候,就已经实例化并存放到内存中了,非静态类则需要new一下。静态类在内存中即使有多个实例,静态的属性也只有一份。
0
悦澜殇
悦澜殇
@leo108 PHP的内置函数写法是不是这样
hello_add(int a, int b){
     return a + b;
}

当我们调用的时候是不是这样

$add = hello_add(1,2);

在PHP里面定义函数

function index(){    	
    return "value";	
}

调用

$val=index();

我个人的想法就是这样,写程序就是根据我们自己的需求来进行扩展,我用PHP做了一个网站,我就可以说我对PHP扩展了函数,我这样说有错吗?


悦澜殇
悦澜殇
回复 @leo108 : 大神,给我这个小白解释一下吧!
悦澜殇
悦澜殇
回复 @leo108 : 恩,你大神,我还没入门呢!!!
leo108
leo108
呵呵,你连php的门都没入,和你争也没啥意思
0
形参思
形参思
非静态类则需要new一下”是不是可以这样理解  用始祖原型new 一个方法出来????
0
fxhover
fxhover

静态方法和静态属性的定义前面要加static关键字,静态方法定义: public static function functionName(){},静态属性的定义:public static $attributeName = xx; 类的静态方法和静态属性不需要实例化就可以直接调用。

静态方法的调用方式:className::functionName();

静态属性的调用方式:className::$attributeName;

0
leo108
leo108

@wanderingies 看你大半夜没睡就回我,我就给你类比一下。

楼主问“根号4等于多少”,你说“1+1=2,你说根号4等于多少呢”,我说“这是两码事”,你说“难道1+1不是等于2吗?我这样说有错吗?”

-1
悦澜殇
悦澜殇
你用PHP内置函数的时候实例化了吗?你用PHP内置属性的时候实例化了吗?
leo108
leo108
回复 @wanderingies : 调用静态需不需要实例化和调用PHP内置函数有啥关联,求大神科普
悦澜殇
悦澜殇
回复 @leo108 : 在这种编程中,类和方法不一样,倒是想听听你这个大神怎么解释
悦澜殇
悦澜殇
回复 @leo108 :不管是不是两码事,现在在问题是需要实例化吗?你用PHP的静态实例化是吗?
leo108
leo108
完全两码事
返回顶部
顶部