php面向对象中static静态属性与方法的内存位置分析


Posted in PHP onFebruary 08, 2015

本文实例分析了php面向对象中static静态属性与方法的内存位置。分享给大家供大家参考。具体如下:

static静态属性的内存位置——>类,而不是对象。下面做测试来证明一下

<?php
header("content-type:text/html;charset=utf-8");
class Human{
 static public $name = "小妹";
 public $height;
 public function tell(){
 }
}
echo Human:$name;
//不依赖于对象,就能直接访问。因为静态属性的内存位置是在类里,而不是对象。
$p1 = new Human();
$p2 = new Human();
print_r($p1);
echo $p1::$name = "夫人";
//在$p1对象上改变静态属性的值,那$p2对象也会相应的改变。
echo $p2::$name;
?>

输出结果可以看出:

1、echo Human:$name :类声明完毕,就存在static属性,并不依赖于对象。因此,静态属性只有一个(意思是在内存里,存放的位置并不是在对象里;如果在对象里,那实例化一个对象,就相应的有该静态的位置,如height属性);

2、print_r($p1):打印结果只有height属性,而没有name;

3、静态属性的值变化后,所有对象的该属性值都会受到影响。

对于方法,无论是静态的、还是普通的,都是存在于类内存空间中。证明也很简单,new一个对象,print_r(对象)即可。

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
require(),include(),require_once()和include_once()的异同
Jan 02 PHP
php expects parameter 1 to be resource, array given 错误
Mar 23 PHP
php 面试碰到过的问题 在此做下记录
Jun 09 PHP
遭遇php的in_array低性能问题
Sep 17 PHP
sae使用smarty模板的方法
Dec 17 PHP
php中利用explode函数分割字符串到数组
Feb 08 PHP
php获取网页请求状态程序示例
Jun 17 PHP
php创建session的方法实例详解
Jan 27 PHP
php函数重载的替代方法--伪重载详解
May 08 PHP
PHP实现在线阅读PDF文件的方法
Jun 17 PHP
php打包压缩文件之ZipArchive方法用法分析
Apr 30 PHP
PHP开发中csrf攻击的简单演示和防范
May 07 PHP
php面向对象中static静态属性和静态方法的调用
Feb 08 #PHP
php延迟静态绑定实例分析
Feb 08 #PHP
PHP调用Linux命令权限不足问题解决方法
Feb 07 #PHP
PHP处理大量表单字段的便捷方法
Feb 07 #PHP
PHP生成压缩文件实例
Feb 07 #PHP
PHP实现股票趋势图和柱形图
Feb 07 #PHP
PHP中的闭包(匿名函数)浅析
Feb 07 #PHP
You might like
php的curl实现get和post的代码
2008/08/23 PHP
PHP+jQuery 注册模块的改进(三):更新到Smarty3.1
2014/10/14 PHP
用js判断浏览器是否是IE的比较好的办法
2007/05/08 Javascript
文本框的字数限制功能jquery插件
2009/11/24 Javascript
JS编程小常识很有用
2012/11/26 Javascript
js或jquery实现页面打印可局部打印
2014/03/27 Javascript
兼容主流浏览器的JS复制内容到剪贴板
2014/12/12 Javascript
用Move.js配合创建CSS3动画的入门指引
2015/07/22 Javascript
用window.onerror捕获并上报Js错误的方法
2016/01/27 Javascript
使用jquery获取url及url参数的简单实例
2016/06/14 Javascript
JavaScript基于自定义函数判断变量类型的实现方法
2016/11/23 Javascript
微信小程序 跳转传参数与传对象详解及实例代码
2017/03/14 Javascript
angularjs中ng-bind-html的用法总结
2017/05/23 Javascript
利用JavaScript如何查询某个值是否数组内
2017/07/30 Javascript
jQuery实现点击下拉框中的值累加到文本框中的方法示例
2017/10/28 jQuery
浅谈Vue数据响应
2018/11/05 Javascript
原生js实现随机点餐效果
2019/12/10 Javascript
JQuery事件委托(适用于给动态生成的脚本元素添加事件)
2020/02/01 jQuery
[03:42]2014DOTA2西雅图国际邀请赛7月9日TOPPLAY
2014/07/09 DOTA
[01:06:18]DOTA2-DPC中国联赛 正赛 Phoenix vs Dynasty BO3 第二场 1月26日
2021/03/11 DOTA
Python使用pymysql小技巧
2017/06/04 Python
Python_查看sqlite3表结构,查询语句的示例代码
2019/07/17 Python
Django视图扩展类知识点详解
2019/10/25 Python
打包PyQt5应用时的注意事项
2020/02/14 Python
jupyter lab的目录调整及设置默认浏览器为chrome的方法
2020/04/10 Python
python 两种方法删除空文件夹
2020/09/29 Python
python中not、and和or的优先级与详细用法介绍
2020/11/03 Python
关于Python错误重试方法总结
2021/01/03 Python
html5中JavaScript removeChild 删除所有节点
2014/05/16 HTML / CSS
Joules官网:女士、男士和儿童服装和鞋类
2018/10/23 全球购物
J2EE面试题
2016/03/14 面试题
师范生实习个人的自我评价
2013/09/28 职场文书
老同学聚会感言
2014/02/23 职场文书
社区综治宣传月活动总结
2014/07/02 职场文书
2015年科普工作总结
2015/07/23 职场文书
Redis 哨兵机制及配置实现
2022/03/25 Redis