php创建类用什么关键字,PHP面向对象开发之类的常用关键字
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面向对象开发之类的常用关键字相关推荐
- java面向对象三个关键字,Java 面向对象(三)static 关键字
一.static 1.概述 static 的意思的静态的,也是一种修饰符. 关于 static 关键字的使用,它可以用来修饰的成员变量和成员方法,被修饰的成员是属于类的,而不是单单属于某个对象的. 用 ...
- idea 怎么快速创建类的快捷键_「快捷键设置」[IDEA]常用快捷键和个人设置 - seo实验室...
快捷键设置 Ctrl+Alt+T:生成try catch Ctrl+N:查找类(enter class name):Ctrl+shift+N:查找文件(enter file name):Ctrl+sh ...
- php怎么创建对象变量,php实现变量动态创建类的对象用法
这篇文章主要介绍了php使用变量动态创建类的对象,涉及php面向对象程序设计中对象的动态创建相关操作技巧,需要的朋友可以参考下 本文实例讲述了php使用变量动态创建类的对象.分享给大家供大家参考,具体 ...
- appium java常用函数_AppiumLibrary常用关键字
通过上一章节,open application关键字的使用,相信大家对手机自动化充满了兴趣,那么今天这一章节,主要介绍AppiumLibrary中常用关键字的使用. 一.实用函数 关键字 含义 实例 ...
- 黑马程序员顺义校区php_PHP面向对象开发视频教程[黑马程序员]
PHP面向对象开发教程 中级共14节课 本套教程讲解面向对象部分内容,从面向对象基础到面向对象高级.从自主开发面向对象到系统使用面向对象.从理论讲解到图解,全方位讲解面向对象. [讲解方式] 系统梳理 ...
- 27、Python 面向对象(创建类、创建实例对象、访问属性、内置类属性、对象销毁、类的继承、方法重写、基础重载方法、运算符重载、类属性与方法、下划线双下划线)
27Python面向对象(Python2) Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的.本章节我们将详细介绍Python的面向对象编程. ...
- python面向对象---创建类
面向对象Object Oriented\ *概述* *面向过程* 分析出解决问题的步骤,然后逐步实现. 例如:婚礼筹办 – 发请柬(选照片.措词.制作) – 宴席(场地.找厨师.准备桌椅餐具.计划菜品 ...
- Lua 面向对象 创建类实例
Lua 面向对象 创建类实例 面向对象编程(Object Oriented Programming,OOP)是一种非常流行的计算机编程架构 常用的面向对象编程语言:C++.Java.Object-C. ...
- ActionScript 3.0 Step By Step系列(五):走在面向对象开发的路上,以类为基础去思考编程问题...
面向对象的程序设计(Object-Oriented Programming,简记为OOP)是一种功能非常强大的编程方法,立意于创建软件重用代码,以类为基础去思考编程问题. ActionScript 3 ...
最新文章
- 从零开始单排学设计模式「UML类图」定级赛
- Python中的元类(metaclass)
- delphi数组问题
- CVE-2016-1779技术分析及其背后的故事
- 双十一购物节,Nacos 1.4.0 + Go SDK 1.0.1发布
- 由点及面,专有云ABC Stack如何护航云平台安全?
- 使用drawio进行画图真的很方便(WEB版/Chrome APP版/桌面版)
- nginx配置vue项目500_一个Nginx部署多个vue前端项目总结
- css注释_CSS注释示例–如何注释CSS
- 最全的CSS浏览器兼容问题(转至http://68design.net/Web-Guide/HTMLCSS/37154-1.html)
- Hyper-V实战:高可用性-配置Hyper-V群集
- 明年,移动应用开发将出现这八大趋势
- 关于shell读取文件打印时展开通配符
- 模型推理速度与硬件算力
- “新元宇宙”奇科幻小说原创作品系列连载《地球人奇游天球记》第三回零点惊魂
- 数字化让企业精益管理梦成真,技术成核心驱动
- 敏捷开发日常跟进系列之三 故事板,看板
- micropython api_micropython和python 微云
- Oracle Executable Binary Mismatch Detected
- 整数大小比较(YZOJ-1034)