php中类的常用关键字包括有:锁(fianl)、有点类似与this关键字(self)、静态属性(static)、常量关键字(const)下面我来给大家整理整理。

类中的常用关键字

1.fianl:锁

2.self:有点类似与this关键字

3.static:静态属性

4.const:常量关键字

1.关键字:fianl

用来定义类和方法的一个重要关键字,当定义类的时候该类不能被继承,用来定义方法的时候该方法不能被重载。

1. final不成修饰成员属性(类中常不是用这个关键字)

2. final只能修饰类和方法

作用:

使用final修饰的类 不 能被子类继承

使用final修饰的方法不能被子类去覆盖

用来限制类不被继承,方法不被覆盖就使用fianl

类使用 final 关键字的例子:

finalclassPerson

{

......

}

final 定义的类被继承时会提示如下错误:

Fatal error: Class Student may not inherit from final class (Person) in ...

方法使用 final 关键字的例子:

classPerson

{

final functionsay()

{

......

}

}

Example #1 Final 方法示例,代码如下:

classBaseClass {

publicfunctiontest() {

echo"BaseClass::test() calledn";

}

final publicfunctionmoreTesting() {

echo"BaseClass::moreTesting() calledn";

}

}

classChildClassextendsBaseClass {

publicfunctionmoreTesting() {

echo"ChildClass::moreTesting() calledn";

}

}

// 产生 Fatal error: Cannot override final method BaseClass::moreTesting()

?>

Example #2 Final 类示例,代码如下:

final classBaseClass {

publicfunctiontest() {

echo"BaseClass::test() calledn";

}

// 这里无论你是否将方法声明为final,都没有关系

final publicfunctionmoreTesting() {

echo"BaseClass::moreTesting() calledn";

}

}

classChildClassextendsBaseClass {

}

// 产生 Fatal error: Class ChildClass may not inherit from final class (BaseClass)

?>

2.关键字:self

在访问PHP类中的成员变量或方法时,如果被引用的变量或者方法被声明成const(定义常量)或者static(声明静态),那么就必须使用操作符::,反之如果被引用的变量或者方法没有被声明成const或者static,那么就必须使用操作符->。

另外,如果从类的内部访问const或者static变量或者方法,那么就必须使用自引用的self,反之如果从类的内部访问不为const或者static变量或者方法,那么就必须使用自引用的$this

格式:self::类内部成员(属性或者方法)

|| 等价于

类名::类内部成员(属性或者方法)

注意:因为没有数理化类访问内部属性或方法是没有意义的,所以self一般用来访问类中的:静态成员,常量,其他定义的内容。

3.关键字:static

内存优化,用来定义静态属性或方法,可以在类未被实例化时就能使用。静态属性单独占用内存,而不会因创建多个对象而重复占用内存。

格式:

classclass1 {

static$name;

staticfunctionfun1 {

...

}

}

静态成员的访问(类内部):

self::静态成员

类名称::静态成员

静态成员的访问(类外部):

类名称::静态成员

4.关键字:const

用来定义类中的常量,只能修饰类当中的成员属性。

格式:

classclass1 {//建议用大写定义,不使用$符号。

constNAME;

...

}

看个PHP const小例子吧,代码如下:

classsay_const{

constCHARSET="中国";

publice functionsay_hello()

{

echoslef::CHARSET;

}

}

$const1=newsay_const()

$const1->say_hello();

?>

(责任编辑:admin)

php创建类用什么关键字,PHP面向对象开发之类的常用关键字相关推荐

  1. java面向对象三个关键字,Java 面向对象(三)static 关键字

    一.static 1.概述 static 的意思的静态的,也是一种修饰符. 关于 static 关键字的使用,它可以用来修饰的成员变量和成员方法,被修饰的成员是属于类的,而不是单单属于某个对象的. 用 ...

  2. idea 怎么快速创建类的快捷键_「快捷键设置」[IDEA]常用快捷键和个人设置 - seo实验室...

    快捷键设置 Ctrl+Alt+T:生成try catch Ctrl+N:查找类(enter class name):Ctrl+shift+N:查找文件(enter file name):Ctrl+sh ...

  3. php怎么创建对象变量,php实现变量动态创建类的对象用法

    这篇文章主要介绍了php使用变量动态创建类的对象,涉及php面向对象程序设计中对象的动态创建相关操作技巧,需要的朋友可以参考下 本文实例讲述了php使用变量动态创建类的对象.分享给大家供大家参考,具体 ...

  4. appium java常用函数_AppiumLibrary常用关键字

    通过上一章节,open application关键字的使用,相信大家对手机自动化充满了兴趣,那么今天这一章节,主要介绍AppiumLibrary中常用关键字的使用. 一.实用函数 关键字 含义 实例 ...

  5. 黑马程序员顺义校区php_PHP面向对象开发视频教程[黑马程序员]

    PHP面向对象开发教程 中级共14节课 本套教程讲解面向对象部分内容,从面向对象基础到面向对象高级.从自主开发面向对象到系统使用面向对象.从理论讲解到图解,全方位讲解面向对象. [讲解方式] 系统梳理 ...

  6. 27、Python 面向对象(创建类、创建实例对象、访问属性、内置类属性、对象销毁、类的继承、方法重写、基础重载方法、运算符重载、类属性与方法、下划线双下划线)

    27Python面向对象(Python2) Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的.本章节我们将详细介绍Python的面向对象编程. ...

  7. python面向对象---创建类

    面向对象Object Oriented\ *概述* *面向过程* 分析出解决问题的步骤,然后逐步实现. 例如:婚礼筹办 – 发请柬(选照片.措词.制作) – 宴席(场地.找厨师.准备桌椅餐具.计划菜品 ...

  8. Lua 面向对象 创建类实例

    Lua 面向对象 创建类实例 面向对象编程(Object Oriented Programming,OOP)是一种非常流行的计算机编程架构 常用的面向对象编程语言:C++.Java.Object-C. ...

  9. ActionScript 3.0 Step By Step系列(五):走在面向对象开发的路上,以类为基础去思考编程问题...

    面向对象的程序设计(Object-Oriented Programming,简记为OOP)是一种功能非常强大的编程方法,立意于创建软件重用代码,以类为基础去思考编程问题. ActionScript 3 ...

最新文章

  1. 从零开始单排学设计模式「UML类图」定级赛
  2. Python中的元类(metaclass)
  3. delphi数组问题
  4. CVE-2016-1779技术分析及其背后的故事
  5. 双十一购物节,Nacos 1.4.0 + Go SDK 1.0.1发布
  6. 由点及面,专有云ABC Stack如何护航云平台安全?
  7. 使用drawio进行画图真的很方便(WEB版/Chrome APP版/桌面版)
  8. nginx配置vue项目500_一个Nginx部署多个vue前端项目总结
  9. css注释_CSS注释示例–如何注释CSS
  10. 最全的CSS浏览器兼容问题(转至http://68design.net/Web-Guide/HTMLCSS/37154-1.html)
  11. Hyper-V实战:高可用性-配置Hyper-V群集
  12. 明年,移动应用开发将出现这八大趋势
  13. 关于shell读取文件打印时展开通配符
  14. 模型推理速度与硬件算力
  15. “新元宇宙”奇科幻小说原创作品系列连载《地球人奇游天球记》第三回零点惊魂
  16. 数字化让企业精益管理梦成真,技术成核心驱动
  17. 敏捷开发日常跟进系列之三 故事板,看板
  18. micropython api_micropython和python 微云
  19. Oracle Executable Binary Mismatch Detected
  20. 整数大小比较(YZOJ-1034)

热门文章

  1. 深度学习参数怎么调优,这12个trick告诉你
  2. 用汇编实现add函数
  3. linux修改系统时间为北京时间(CentOS)
  4. C#面向对象9 字符串
  5. Swift 4 无限滚动轮播图(UICollectionView实现)
  6. Cocos Creator—定制H5游戏首页loading界面
  7. HTML 事件属性_03
  8. 《3D数学基础》系列视频:这次,真的是广告!
  9. 转载:页面加载swf插件:swfobject
  10. LIKE语句也可以这样写