在php中,其实不止在php中,在其他语言中我们也会常常接触到一些关键字,整理了一下php当中的一下关键字,可能有些不全,希望大家指出来,多多交流,一起进步。

1.final

特性:1.使用final关键字标记的类不能被继承;2.被final关键字标记的方法不能被子类重写,是最终版本
目的:一是为了安全,二是没有必要
final class Final1
{
public $name;
final function say(){
echo "无法调用这个方法以及这个类";
} }

  

2.const(成员常量):定义一些固定不变的值

命名规则,是一个公共的,所以用关键字const,后面不能加$
用self来调用这个常量,但是不能更改
class Const1
{
const base=100;
function show(){
self::base; //base永远是100
}
}

  

3.instanceof用于检测当前的实例是否属于某一个类的类型

代码:下面的One类为父类,Two为子类,继承了父类

$one = new One();
$two = new Two();
echo $one instanceof One; echo $one instanceof Two; echo $two instanceof One;

  

4.static静态方法

属于类的方法和属性,需要用类去调用,全局都可以调用,不用去实例化对象

class Static1
{
static $name = "fangming";
public function show(){
echo self::$name; //self关键字相当于本类,不能用this
}
}
echo Static1::$name;

  

5.特别补充:获取实例对象

有时候一个类里面的属性都是私有的,初始化的__construct函数都是私有的,这个时候就需要用到静态方法来获取实例了,具体代码如下

class Singleton
{
static $instance=null; private function __construct()
{
} //获取单例对象
public static function getInstance(){ if(is_null(self::$instance)){
self::$instance=new Singleton ();
} return self::$instance;
}
}
Singleton::getInstance();

  

php学习十三:其他关键字的更多相关文章

  1. 一个具体的例子学习Java volatile关键字

    相信大多数Java程序员都学习过volatile这个关键字的用法.百度百科上对volatile的定义: volatile是一个类型修饰符(type specifier),被设计用来修饰被不同线程访问和 ...

  2. 跟着9张思维导图学习Javascript js 关键字和保留字 css3中的BFC,IFC,GFC和FFC

    跟着9张思维导图学习Javascript   学习的道路就是要不断的总结归纳,好记性不如烂笔头,so,下面将 po 出我收集的 9 张 javascript 相关的思维导图(非原创). 思维导图小ti ...

  3. Dart语言学习(十三) Dart Mixins 实现多继承

    Mixins Mixins(混入功能)相当于多继承,也就是说可以继承多个类,使用with关键字来实现Mixins的功能. 那么多个类中有相同的方法时候,会被覆盖吗?覆盖的先后是什么? class A{ ...

  4. Java学习十三

    学习内容: 1.Java反射 2.jdbc入门 1.反射的概述 Java的反射机制:动态获取信息以及动态调用对象方法 Java的反射机制的作用:用来编写一些通用性较高的代码或者框架的时候使用 原理:j ...

  5. jquery学习笔记---this关键字

    1.    在JavaScript的变量作用域里有一条规则“全局变量都是window对象的属性”.当执行 checkThis() 时相当于 window.checkThis(),因此,此时checkT ...

  6. JAVA基础学习之final关键字、遍历集合、日期类对象的使用、Math类对象的使用、Runtime类对象的使用、时间对象Date(两个日期相减)(5)

    1.final关键字和.net中的const关键字一样,是常量的修饰符,但是final还可以修饰类.方法.写法规范:常量所有字母都大写,多个单词中间用 "_"连接. 2.遍历集合A ...

  7. java基础学习总结——this关键字

    一.this关键字

  8. Python学习笔记-Day3-python关键字

    1.and 逻辑与 2.assert 判断某个条件是否为真,如果为假,抛出错误 3.break跳出for,while循环 4.class 类定义 5.continue 跳出本次循环,执行下次循环 6. ...

  9. CUBRID学习笔记23 关键字列表

    先放上特殊的字符 Backtick Symbol - `    反引号 同撇 Double Quotes - "      双引号 Square Brackets - [  中括号 如    ...

随机推荐

  1. 屏幕亮度(XE10.1+WIN8.164)

    相关资料: http://bbs.csdn.net/topics/390664310 实例代码: unit Unit1; interface uses Winapi.Windows, Winapi.M ...

  2. 支持移动触摸设备的简洁js幻灯片插件

    lory是一款支持移动触摸设备的简洁的js幻灯片插件.该幻灯片插件可以通过纯js调用,也可以将该幻灯片插件作为jQuery插件来使用.该幻灯片的过渡动画具有硬件加速功能,并且可以定制是否使用easin ...

  3. 梦想天空(关注前端开发技术 html5+css3)

    http://www.cnblogs.com/lhb25/p/must-read-links-for-web-designers-and-developers-volume-32.html

  4. 在CMD下启动vmware、Xshell连接虚拟机以及控制Chrome浏览器自动执行js登录校园网

    标题有点长,主要是写个bat出来玩玩, (1)不用每次都手动关闭mysql服务(我不想把它设为手动启动,有强迫症) (2)然后希望每次vmware能自动连上虚拟机 (3)以及每次Xshell都能自动启 ...

  5. BloomFilter——大规模数据处理利器[转]

    原文链接:原文 Bloom Filter是由Bloom在1970年提出的一种多哈希函数映射的快速查找算法.通常应用在一些需要快速判断某个元素是否属于集合,但是并不严格要求100%正确的场合. 一. 实 ...

  6. linux下获取服务器硬件信息的脚本

    这是个简单的脚本,便于查询服务器的硬件信息: #!/bin/bash # # Description: # Used to get the hardware config information. # ...

  7. javascript 鼠标方式去显示

    document.write("<style type='text/css'>"); document.write(".yyfloat_p{width:209 ...

  8. LoadRunner性能测试基础知识问答

    Q1:什么是负载测试?什么是性能测试? A1:负载测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试,例如,访问一个页面的响应时间规定不超 ...

  9. ubuntu开启SSH服务远程登录

    http://blog.csdn.net/jackghq/article/details/54974141 ubuntu开启SSH服务远程登录

  10. CMutex、CCriticalSection、CSemaphore、CEvent、WaitForSingleObject 的小例子

    一.CMutex CMutex mutex; mutex.Lock(); // 互斥的动作 // mutex.Unlock(); 二.CCriticalSection CCriticalSection ...