fyqt.net
当前位置:首页 >> stAtiC 与 nEw 效率 >>

stAtiC 与 nEw 效率

首先,不管哪种方式,都是通过new进行实例化,三种方式的不同在于,每次调用使用的dao对象是否相同。 1)直接new:每次调用都需要实例化; 2)静态变量,在这个类被加载时已经实例化好,调用process方法时直接使用; 3)带synchronized的getter...

new关键字是用于实例化一个类 语法为 $class = new ClassName(); static关键字是用于定义类中静态的属性或方法,静态属性或方法可以不需要实例化就可以直接使用,例如:

static 是静态的,jvm有个静态内存区域,即类没new之前就已经创建出来了

public static single1 getSingle1(){ if(s==null) s=new single1(); return s;}

类是不可以用static修饰的.估计你说的字段是方法体.static修饰方法体,只是说明这个方法是静态的,与能不能new出来一个实例并没有关系. 如有一个类不能new出一个实例,那么这个类是抽象类,是用abstract修饰的.

我贴一段代码 这个问题老外解释的比较好 = = class A { public static function get_self() { return new self(); } public static function get_static() { return new static(); }} class B extends A {} echo get_class(B::get_self()); // A...

废话就不说了。简单直接的回答你:放在静态区(全局区)。 满意请采纳,谢谢

我贴一段代码 这个问题老外解释的比较好 = = class A { public static function get_self() { return new self(); } public static function get_static() { return new static(); } } class B extends A {} echo get_class(B::get_self()); // ...

self - 就是这个类,是代码段里面的这个类。 static - PHP 5.3加进来的只得是当前这个类,有点像$this的意思,从堆内存中提取出来,访问的是当前实例化的那个类,那么 static 代表的就是那个类。

这个是c/c++的 可以参考理解理解,万变不离其宗 http://blog.csdn.net/qq_26816591/article/details/52247759

网站首页 | 网站地图
All rights reserved Powered by www.fyqt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com