PHP中普通属性和静态属性
普通属性(实例属性):
实例的单词为:instance
实例,其实也叫做“对象”;
普通(实例)属性,就是一个可以在该类实例化出的对象上使用的属性!
定义形式:
class 类名{
var $属性名 = 初始值;
var $属性名; //这个属性没有初始值;
//上述的var 还可以使用public来代替,比如:
public $属性名 = 初始值;
public $属性名; //这个属性没有初始值;
}
使用形式:
是通过该类的对象,来使用普通属性(实例属性):
$对象->属性名;
因为,属性的本质就是变量,则其就可以当做一个变量来看待和使用,比如:
$v1 = $对象->属性名;
echo $对象->属性名;
$v2 = $对象->属性名 * 3 + 5; //进行计算
静态属性:
静态属性,本质上也是“变量”,但其有一个特点就是:该变量只隶属于“类”,即:
一个类中的一个静态属性,就只有“一份数据”;
但:
一个类中的一个实例属性,就可以有“多份数据”——每创建一个对象出来,就会有一份数据;
定义形式:
class 类名{
static $属性名 = 初始值;
static $属性名; //这个属性没有初始值;
}
使用形式:
使用类名和范围解析符(::)来对静态属性进行操作:
类名::$静态属性名; //注意:属性名带$符号
对比1:
常量的使用:类名::常量名;
对比2:
实例属性的使用:对象名->实例属性名; //注意:属性名不带$符号

结果为:
可见:
1,实例属性,是每个对象都可以不一样的数据,也是每个对象都“独自拥有”的数据;
2,静态属性,他不属于任何一个对象,而只属于该类本身,也可以理解为为所有对象所共有的数据;
PHP中普通属性和静态属性的更多相关文章
- JavaScript面向对象(二)——成员属性、静态属性、原型属性与JS原型链
前 言 JRedu 上一篇博客中,我们介绍了JS中的面向对象,并详细的解释了this的指向问题.本篇博客,我们继续来学习JS的面向对象.来深入理解一下JavaScript OOP中的成员属性/方 ...
- php中常量 const属性,静态属性,静态的函数方法
<?php//php中的常量define('MYNUM', 2000);echo MYNUM.'<br>';if(!defined('MYNUM')){ define('MYNUM' ...
- JS中的实例方法、静态方法、实例属性、静态属性
一.静态方法与实例方法的例子: 我们先来看一个例子来看一下JS中的静态方法和实例方法到底是什么? 静态方法: function A(){} A.col='red' //静态属性 A.sayMeS=f ...
- es6中class类的静态方法、实例方法、实例属性、(静态属性)
关于类有两个概念,1,类自身,:2,类的实例对象 总的来说:静态的是指向类自身,而不是指向实例对象,主要是归属不同,这是静态属性的核心. 难点1:静态方法的理解 class Foo { static ...
- 17 webpack中babel的配置——静态属性与实例属性
// class关键字,是ES6中提供的新语法,是用来实现ES6中面向对象编程的方式 class Person{ // 使用static关键字,可以定义静态属性 // 所谓的静态属性,就是可以直接通过 ...
- WPF中多窗口共享静态属性
由于我的DoubanFm在重新考虑之后,需要设置一个全局的CurrentSong,这个字段要让所有的VM都知道,而我同时又想把它作为我所有VM的共有属性.而且我想尽量减少代码的复制,提高重用.所以我做 ...
- qt 静态库中貌似不能使用静态属性
今天一个问题搞的很郁闷,原本好好的工程,这两天加了几个类之后链接不通过了. 发现过程略去不说,最后去掉了类中的static属性,编译通过了.具体原因没时间仔细查了,反正尽量避免在静态链接库里使用sta ...
- 什么是静态代码块?java中如何使用空参构造方法自动生成不同名字的对象,使用非静态的属性和静态属性有什么区别,原因是什么?如何理解static关键字
静态代码块?类加载就执行,最先执行 class demo{ static int num; static{ num=10; num*=3; System.out.println("haha& ...
- calendar中set方法和静态属性带来的坑
坑在哪里: 在我之前接触的一个项目中涉及到这么一项功能:每天00:00:00把某些数据移动到mongodb数据库的另一个集合中,也就是关系型数据库的表中.这个集合名是一个固定的名称加上当前的两个月前的 ...
随机推荐
- 4.28-python学习笔记(转义符&input函数)
参考书目:<Learn Python The Hard Way> ##练习10 print("i am 6'2\"tall.")#将双引号转义 print(' ...
- Java六大设计原则
类的设计原则 依赖倒置原则-Dependency Inversion Principle (DIP) 里氏替换原则-Liskov Substitution Principle (LSP) 接口 ...
- 20155202 20155222 信息安全技术概论实验一 PGP的使用
20155202 信息安全技术概论实验一 PGP的使用 实验原理 一.PGP简介 在现代社会里,电子邮件和网络上的文件传输已经成为生活的一部分.邮件的安全问题也就突出了,大家都知道在互联网上传输的数据 ...
- 基于Opencv的人脸检测及识别
一.实验目的:我这里完成的是,将8张人脸图片(4组,每组两张)存入库中,选取1张图片,程序识别出与其匹配的另一张. 这里介绍分三个步骤完成该工作,①程序读取摄像头.拍照 ②程序从电脑文档中读取图片 ...
- 安装虚拟机和Linux系统的学习
安装虚拟机和Linux系统的学习(随笔3) 1.安装虚拟机 首先我按着老师给的链接上的步骤一步一步安装VirtualBox,进行得十分顺利. 接着则是在虚拟机上安装Ubuntu. 然而安装完成以后按要 ...
- ## 20155336 2016-2017-2《JAVA程序设计》第十周学习总结
20155336 2016-2017-2<JAVA程序设计>第十周学习总结 学习任务 完成学习资源中相关内容的学习 参考上面的学习总结模板,把学习过程通过博客(随笔)发表,博客标题“学号 ...
- 封印解除:如何在Win10家庭版中启用组策略
@echo off pushd "%~dp0" *.mum >List.txt *.mum >>List.txt for /f %%i in ('findstr ...
- MySQL入门篇(五)之高可用架构MHA
一.MHA原理 1.简介: MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Faceb ...
- javaweb(二十九)——EL表达式
一.EL表达式简介 EL 全名为Expression Language.EL主要作用: 1.获取数据 EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象.获取数 ...
- ESP8266 NON-OS SDK 和 RTOS SDK实现GPIO中断不同点
ESP8266 Non-OS SDK 和 RTOS SDK 实现GPIO的方法稍有不同: 对于 Non-OS SDK,比如需要把 MTDO 配置成输入,同时下降沿触发中断: gpio_init(voi ...