在效率上:常量编译过程比静态变量快的多。

代码:

<?php
error_reporting(E_ALL);
class A { const c = 9;
public static $b = 5; public function setst ($ca) {
self::$b = $ca;
}
} $obj = new A;
echo $obj->c;//出错,是类的属性,不是对象的属性
echo $obj->$b;//出错,是类的属性,不是对象的属性
echo $obj::c;//ok,
echo A::c;//ok
echo $obj::$b;//ok
echo A::$b;//ok
$obj->setst(100);//更改静态变量的值
echo $obj::$b;//更改成功 ?>

结论:

  实例的属性才可以用 $obj->c 这种方式访问。

  静态变量和常量都是类的属性,类的属性都用双冒号访问(::),通过对象或者类名都可以访问。

  常量是不可变的,静态变量可以通过self来赋值改变。

  const常量:类的不变属性

  static变量:类的可变属性

最新文章

  1. 使用VS2010编译Qt 5.6.1过程记录
  2. C++中的private/protected/public
  3. Windows上帝模式,上帝应该就是这样使用Windows的
  4. Java:过去、未来的互联网编程之王
  5. 一、Microsoft Dynamics CRM 4.0 SDK概述
  6. js原生设计模式——6复杂对象的构建—Builder建造者模式
  7. C# WinForm 跨线程访问控件
  8. JVM之Java虚拟机详解
  9. Javascript扩展String.prototype实现格式金额、格式时间、字符串连接、计算长度、是否包含、日期计算等功能
  10. 饮冰三年-人工智能-Python-13Python基础之运算符与数据类型
  11. jquery轻量级数字动画插件jquery.countup.js
  12. 中文字符串和UTF-8编码字符串相互转换
  13. e生保plus
  14. 软件工程课堂练习&amp;课下作业
  15. 通过用户名、密码提交的方式搭建私有git服务端
  16. HTTP请求GET/POST查看工具
  17. Nginx安装SSL安全证书
  18. element-UI表格从一列中,拿到当前行的index----scope
  19. 怎样在linux下对U盘进行格式化和分区
  20. VBA7种文档遍历法

热门文章

  1. Apache Compress-使用
  2. Careercup - Microsoft面试题 - 5799446021406720
  3. Python框架之Django学习笔记(一)
  4. Python-S9-Day125-Web微信&amp;爬虫框架之scrapy
  5. web 大规模并发访问的解决方案
  6. [转]Jupyter NoteBook 的快捷键使用指南
  7. 函数的apply、call方法和length属性
  8. 手机安装app总是显示未安装
  9. hdu6212[区间dp] 2017青岛ACM-ICPC网络赛
  10. [SCOI2011][bzoj2331] 地板 [插头dp]