• instanceof详解


    instanceof 用于确定一个 PHP 变量是否属于某一类 class 的实例

    <?php
    class MyClass
    {
    }
    
    class NotMyClass
    {
    }
    $a = new MyClass;
    
    var_dump($a instanceof MyClass);      // true
    var_dump($a instanceof NotMyClass);    // false
    ?>

    PHP 面向对象中常见关键字的使用:  

    1、final

    final关键字可以加在类或者类中方法之前,但是不能使用final标识成员属性。

    作用: a、使用final标识的类,不能被继承。

       b、在类中使用final标识的成员方法,在子类中不能覆盖。

    总结:final表示为最终的意思,所以使用final关键字的类或者类中的成员方法是不能被更改的

    2、static

    static关键字将类中的成员属性或者成员方法标识为静态的,static标识的成员属性属于整个类,static成员总是唯一存在的,被类的全部对象实例共享。

    调用方式:

    类外:类名::静态成员属性名;类名::静态成员方法名(); 对象引用::静态成员属性名;对象引用::静态成员方法名();建议在类外使用类名访问静态的属性或方法。

    类内: self::静态成员属性名;self::静态成员方法名()。

    提示:在使用静态方法时需要注意,在静态方法中只能访问静态成员。因为非静态的成员必须通过对象的引用进行访问,通常是使用$this完成。而静态的方法在对象不存在的情况下也可以直接使用类名来访问,没有对象也就没有$this引用,没有了$this引用就不能访问类中的非晶态成员,但是可以使用类名或者self在非静态方法中访问静态成员

    3、const:

    const关键字是在类中定义常量,而define()函数也是定义常量,但它是在类外定义常量

     调用方式和静态成员是一样的,都是通过类名或者在成员方法中使用self关键字进行访问,但是不建议使用对象引用进行访问。

    注意事项:const标识的常量的属性是只读的,不能重新赋值,所以一定要在定义的时候初始化。使用const声明的常量名称前不要使用“$”符号,并且常量名通常都是大写的。

    4、instanceof:

    instanceof 关键字确定一个对象是否是类的实例、类的子类、还是实现了某个特定的接口,如果是则返回 true 否则返回 false。

    用法:对象引用 instanceof 类名  例如:$man instanceof People;

    注意: 类名不使用定界符(不使用引号)。

    更多详细内容请参看:http://php.net/manual/zh/language.operators.type.php

    更多详细内容请参看https://www.cnblogs.com/tianshuowang/p/4676505.html

  • 相关阅读:
    [bzoj 1031][JSOI2007]字符加密Cipher
    [bzoj 3224] tyvj 1728 普通平衡树
    分治算法例题
    Codeforces 1146F. Leaf Partition(树形DP)
    Codeforces 1146H. Satanic Panic(极角排序+DP)
    Codeforces 578E. Walking!(贪心+线段树)
    学习日记0802函数递归,三元表达式,列表生成式,字典生成式,匿名函数+内置函数
    学习日记0808
    0803学习日志迭代器
    学习日记0804生成器
  • 原文地址:https://www.cnblogs.com/chrdai/p/8582788.html
Copyright © 2020-2023  润新知