PHP开发者必须掌握的6个关键字


Posted in Javascript onApril 14, 2014

任何PHP开发人员在使用面向对象构建WEB应用程序时,都需要掌握6个关键字,他们分别是:

1.Private
2.Public
3.Protected
4.Static
5.Final
6.Abstract

对于前三个关键字,他们在类内部访问关系如下图:

 

Private如上图所示,Private是访问控制的最核心部分,因此,在类中被定义成Private的属性(变量)或方法只能在该类内部访问,该类的任何实例(对象)或子类都无法访问,同样,你也不能通过类名直接访问。

Protected

Protected的访问级别仅次于Private,被定义为Protected的属性(变量)或方法不仅在本类中可以被访问,在该类的子类中同样可以访问,这是Private属性所不能的。

Public

Public具有最大的访问权限,被定义成Public的属性(变量)或方法可以在程序的任何位置、任何时间访问。

static

当我们在类中声明一个属性(变量)为static,那么该属性的值在其所有对象中都是可见的,是一个共享变量,因此,static属性值依赖类而非对象。静态属性不能通过对象访问,而是用类名加::符号直接访问。
同样,静态方法也具有对象共享特性,但需要注意如下两点:

1.直接通过类名加::访问静态方法
2.静态方法中不能使用$this关键字

Final

如果属性(变量)被Final修饰,那么该属性(变量)值不能被改变,如果是函数,则该函数不能被覆盖或重写。

Abstract

定义为Abstract的类不能被实例化。任何一个类,如果它里面至少有一个方法是被声明为Abstract,那么这个类就必须被声明为Abstract。被定义为Abstract的方法只是声明了其调用方式(参数),不能定义其具体的功能实现。

Javascript 相关文章推荐
JavaScript 空位补零实现代码
Feb 26 Javascript
从阶乘函数对比Javascript和C#的异同
May 31 Javascript
判断是否安装flash player及当前版本的JS代码
Aug 08 Javascript
Javascript控制input输入时间格式的方法
Jan 28 Javascript
莱鸟介绍window.print()方法
Jan 06 Javascript
jquery validation验证表单插件
Jan 07 Javascript
swiper插件自定义切换箭头按钮
Dec 28 Javascript
vue2中引用及使用 better-scroll的方法详解
Nov 15 Javascript
JS中类的静态方法,静态变量,实例方法,实例变量区别与用法实例分析
Mar 14 Javascript
vue+element实现图片上传及裁剪功能
Jun 29 Javascript
JS异步宏队列微队列原理详解
Sep 09 Javascript
Javascript Symbol原理及使用方法解析
Oct 22 Javascript
javascript中的括号()用法小结
Apr 14 #Javascript
javascript获取函数名称、函数参数、对象属性名称的代码实例
Apr 12 #Javascript
jQuery操作表格(table)的常用方法、技巧汇总
Apr 12 #Javascript
JS获取URL中参数值(QueryString)的4种方法分享
Apr 12 #Javascript
javascript对JSON数据排序的3个例子
Apr 12 #Javascript
Js保留小数点的4种效果实现代码分享
Apr 12 #Javascript
JS判断客户端是手机还是PC的2个代码
Apr 12 #Javascript
You might like
用PHP调用数据库的存贮过程
2006/10/09 PHP
MySQL修改密码方法总结
2008/03/25 PHP
php下目前为目最全的CURL中文说明
2010/08/01 PHP
php遍历文件夹下的所有文件和子文件夹示例
2014/03/20 PHP
如何让thinkphp在模型中自动完成session赋值小教程
2014/09/05 PHP
PHP实现将HTML5中Canvas图像保存到服务器的方法
2014/11/28 PHP
Symfony2框架创建项目与模板设置实例详解
2016/03/17 PHP
PHP面向对象五大原则之开放-封闭原则(OCP)详解
2018/04/04 PHP
csdn 批量接受好友邀请
2009/02/19 Javascript
用jquery实现的模拟QQ邮箱里的收件人选取及其他效果(一)
2011/01/06 Javascript
jQuery + Flex 通过拖拽方式动态改变图片的代码
2011/08/03 Javascript
JavaScript中自定义事件用法分析
2014/12/23 Javascript
EasyUI,点击开启编辑框,并且编辑框获得焦点的方法
2015/03/01 Javascript
原生js和jquery实现图片轮播特效
2015/04/23 Javascript
js 判断所选时间(或者当前时间)是否在某一时间段的实现代码
2015/09/05 Javascript
理解jquery事件冒泡
2016/01/03 Javascript
20行JS代码实现网页刮刮乐效果
2017/06/23 Javascript
js封装成插件_Canvas统计图插件编写实例
2017/09/12 Javascript
elemetUi 组件--el-upload实现上传Excel文件的实例
2017/10/27 Javascript
vue 引入公共css文件的简单方法(推荐)
2018/01/20 Javascript
express 项目分层实践详解
2018/12/10 Javascript
简单实现vue中的依赖收集与响应的方法
2019/02/18 Javascript
微信小程序进入广告实现代码实例
2019/09/19 Javascript
深入理解redux之compose的具体应用
2020/01/12 Javascript
vuejs element table 表格添加行,修改,单独删除行,批量删除行操作
2020/07/18 Javascript
[54:09]RNG vs Liquid 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.23
2019/09/05 DOTA
Python中使用Tkinter模块创建GUI程序实例
2015/01/14 Python
深入学习python多线程与GIL
2019/08/26 Python
中药学自荐信
2014/06/15 职场文书
爱耳日宣传活动总结
2014/07/05 职场文书
少先队活动总结
2014/08/29 职场文书
乡镇干部个人对照检查材料思想汇报(原创篇)
2014/09/28 职场文书
企业党支部工作总结2015
2015/05/21 职场文书
2015秋季运动会通讯稿
2015/07/18 职场文书
python树莓派通过队列实现进程交互的程序分析
2021/07/04 Python
《英雄联盟》2022日蚀、月蚀皮肤演示 黑潮亚索曝光
2022/04/13 其他游戏