php中final和static的区别是什么
php中final和static的区别:1、static是静态变量,静态变量仅在局部函数域中存在,但当程序执行离开此作用域时,其值并不丢失;2、final是用于函数的,属于面向对象的用法,一旦使用,这个函数就无法更改和重载。
本文操作环境:Windows7系统、PHP7.1版,Dell G3电脑
php中final和static的区别
static是静态变量,静态变量仅在局部函数域中存在,但当程序执行离开此作用域时,其值并不丢失。
例如,你可以用来计算函数调用的累加次数。
<?PHP function Test() { static $w3sky = 0; echo $w3sky; $w3sky++; } ?>
静态(static)关键字
本页说明了用 static 关键字来定义静态方法和属性。static 也可用于定义静态变量以及后期静态绑定。参见上述页面了解 static 在其中的用法。
声明类属性或方法为静态,就可以不实例化类而直接访问。静态属性不能通过一个类已实例化的对象来访问(但静态方法可以)。
静态方法
由于静态方法不需要通过对象即可调用,所以伪变量 $this 在静态方法中不可用。
用静态方式调用一个非静态方法会抛出 Error。
在 PHP 8.0.0 之前,通过静态方式调用一个非静态方法这种用法已经被废弃,并且会导致一个 E_DEPRECATED 级别的警告。
fainal 是用于函数的,属于面向对象的用法,一旦使用,这个函数就无法更改和重载了。
PHP 5 新增了一个 final 关键字。如果父类中的方法被声明为 final,则子类无法覆盖该方法。如果一个类被声明为 final,则不能被继承。
推荐学习:《PHP视频教程》
以上就是php中final和static的区别是什么的详细内容,更多请关注其它相关文章!
上一篇: php怎么退出登录清除session
下一篇: php gd怎么设置字体
推荐阅读
-
hiberfil.sys是什么文件 PHP中文件读、写、删的操作PHP中对文件和目录操作
-
php中类继承与接口继承的区别是什么
-
PHP中SERIALIZE和JSON序列化与反序列化的区别
-
php中require和require_once的区别说明_PHP教程
-
php中$_SERVER[PHP_SELF] 和 $_SERVER[SCRIPT_NAME]之间的区别
-
php中类继承与接口继承的区别是什么
-
PHP和ASP中关于转向函数的区别_PHP
-
php中echo()和print()、require()和include()等易混淆函数的区别_PHP
-
PHP中cookie和session的区别实例分析_php实例
-
CGI和servlet运行方式本质的区别是什么?PHP和Java在Web开发的原理有哪些本质不同?