zoukankan      html  css  js  c++  java
  • 预定义接口

    一:特点

    1:接口中定义的所有的方法都是空的。

    2:接口中定义的所有方法都必须是公有,这是接口的特性。

    3:接口也可以继承,通过使用 extends 操作符。

    4:类要实现接口,必须使用和接口中所定义的方法完全一致的方式。否则会导致致命错误。

    5:接口中也可以定义常量。接口常量和类常量的使用完全相同,但是不能被子类或子接口所覆盖。

    二:预定义接口(6个)

    Traversable

    Iterator(迭代器)接口

    1:Traversable

    作用:检测一个类是否可以使用 foreach 进行遍历的接口。

    php代码中不能用。只有内部的PHP类(用C写的类)才可以直接实现Traversable接口
    php代码中使用Iterator或IteratorAggregate接口来实现遍历。

    这个接口没有任何方法,它的作用仅仅是作为所有可遍历类的基本接口

    Traversable接口实际上不是一个接口,在实际写php代码中不能用。因为只有内部的PHP类(用C写的类)才可以直接实现 Traversable接口。可以说这是个特性级别的东西。实际的PHP编程中我们使用Iterator接口或者IteratorAggregate接口 来实现遍历。

    Traversable 接口不能直接实现(implements).Traversable 重要的一个用处就是判断一个类是否可以遍历:

    if($class instanceof Traversable)
    {
         //foreach...
    }

    下面是官方例子:
    <?php if( !is_array( $items ) && !$items instanceof Traversable ) //Throw exception here ?>
  • 相关阅读:
    [调参]batch_size的选择
    [调参]CV炼丹技巧/经验
    [Pytorch]Pytorch加载预训练模型(转)
    [PyTorch]论文pytorch复现中遇到的BUG
    [Opencv]图像的梯度与边缘检测(转)
    freemodbus移植、实例及其测试方法
    eclipse的C/C++开发搭建
    ROS安装
    U-boot移植
    QT开发实战一:图片显示
  • 原文地址:https://www.cnblogs.com/Alight/p/5480861.html
Copyright © 2011-2022 走看看