php笔记(六)PHP类与对象之对象接口
接口的实现
<?php
//interface 关键字用于定义一个接口
interface ICanEat{
//接口里面的方法不需要实现
public function eat($food);
}
//implements关键字用于类实现某个接口
class Human implements ICanEat{
//实现了接口后,必须提供接口中方法的具体实现
public function eat($food){
echo "Human eating".$food;
} } ?>
那么这一通定义之后
通过实例化对象
$peroson1=new Human();
$person1->eat('apple');
输出的结果就是
Human eating apple
<?php //interface 关键字用于定义一个接口
interface ICanEat{
//接口里面的方法不需要实现
public function eat($food);
}
//implements关键字用于类实现某个接口
class Human implements ICanEat{
//实现了接口后,必须提供接口中方法的具体实现
public function eat($food){
echo "Human eating".$food."\n";
} }
$person1 = new Human();
$person1->eat('apple'); //我们可以通过instanceof关键字来判断对象是否实现了某个接口 var_dump($person1 instanceof ICanEat); //在上面的例子中我们可以通过这个关键字来判断是否实现了ICanEat这个接口 ?>
那么输出结果应该是
Human eating apple
Bool (true)
<?php
//interface 关键字用于定义一个接口
interface ICanEat{
//接口里面的方法不需要实现
public function eat($food);
}
//implements关键字用于类实现某个接口
class Human implements ICanEat{
//实现了接口后,必须提供接口中方法的具体实现
public function eat($food){
echo "Human eating".$food."\n";
}
}
$person1 = new Human();
$person1->eat('apple');
//我们可以通过instanceof关键字来判断对象是否实现了某个接口
var_dump($person1 instanceof ICanEat);
//在上面的例子中我们可以通过这个关键字来判断是否实现了ICanEat这个接口
//类可以继承,那么接口同样也能被继承
interface ICanSleep extends ICanEat{
public function sleep();
}
//当类实现子接口,那么父接口定义的方法也需要在类中来具体实现
class Human1 implements ICanSleep{
public function eat($food){}
public function sleep(){}
}
?>

php笔记(六)PHP类与对象之对象接口的更多相关文章
- python学习笔记(六)、类
Python与java.c++等都被视为一种面向对象的语言.通过创建自定义类,用于处理各种业务逻辑.面向对象有封装.继承.多态三个特征,这也是面子对象语言的通用特征. 1 封装 封装,是值向外部隐藏内 ...
- python学习笔记六--用户自定义类
一.类: 1. 面向对象. 2. 定义了新的对象类型. 定义了两个属性:name,pay 定义了两个方法:lastName,giveRaise
- guxh的python笔记六:类的属性
1,私有属性 class Foo: def __init__(self, x): self.x = x 类的属性在实例化之后是可以更改的: f = Foo(1) print(f.x) # 1 f.x ...
- c++ 吕凤翥 第六章 类和对象(二)
c++ 吕凤翥 第六章 类和对象(二) 指针 引用 和数组 一:对象指针和对象引用 1.指向类的成员的指针 分为指向成员变量和指向成员函数两种指针 成员变量的格式: 类型说明符 类名: ...
- JVM学习笔记-第六章-类文件结构
JVM学习笔记-第六章-类文件结构 6.3 Class类文件的结构 本章中,笔者只是通俗地将任意一个有效的类或接口锁应当满足的格式称为"Class文件格式",实际上它完全不需要以磁 ...
- Java入门篇(六)——类和对象
写到这里终于写到了入门篇的最后一个知识点了.类和对象是Java中经常被提到的两个词汇,实际上可以将类看作对象的载体,它定义了对象所具有的功能.Java是面向对象的语言,因此掌握类与对象是学习Java语 ...
- Python笔记(七):字典、类、属性、对象实例、继承
(一) 简单说明 字典是Python的内置数据结构,将数据与键关联(例如:姓名:张三,姓名是键,张三就是数据).例如:下面这个就是一个字典 {'姓名': '张三', '出生日期': '2899-08 ...
- Java学习笔记六 常用API对象二
1.基本数据类型对象包装类:见下图 public class Test { public static void main(String[] args){ Demo(); toStringDemo() ...
- [javase学习笔记]-6.5 类类型參数与匿名对象
这一节我们来说说类类型參数和匿名对象. 我们继续用之前的小汽车类吧 class Car { int num;//这是轮胎数属性 String color;//这是颜色属性 String brand;/ ...
随机推荐
- HTTP header 介绍
HTTP(Hyper Text Transfer Protocol)是超文本传输协议的缩写,它用于传送www方式的数据.HTTP协议采用了请求/响应模型.客服端向服务器发送一个请求,请求头包含请求的方 ...
- Spring实例
Spring实例 上次的博文中 深入浅出Spring(二) IoC详解 和 深入浅出Spring(三) AOP详解中,我们分别介绍了一下Spring框架的两个核心一个是IoC,一个是AOP.接下来我们 ...
- Combo模糊匹配中文问题
茗洋Easy UI 1.3.2 部分问题解决系列专题[Combo模糊匹配中文问题 修复] 本次给大家带来的EasyUI的我研究拓展的新特性 我使用的是 EasyUI 1.3.2版本的,项目是ASP. ...
- 配置 SQL Server Email 发送以及 Job 的 Notification通知功能
配置 SQL Server Email 发送以及 Job 的 Notification通知功能 在与数据库相关的项目中, 比如像数据库维护, 性能警报, 程序出错警报或通知都会使用到在 SQL Ser ...
- 仿腾讯微博的一个弹出框 v0.1 beta
仿腾讯微博的一个弹出框 v0.1 beta 代码写的不太好,新手请大家海涵,只为博君一笑,勿放在心上. 写在这里留作纪念,也许以后用的到. 效果 CSS .prompt{ position: ab ...
- Java笔记:String类
1.String类是不可变类,一旦一个String对象被创建以后,包含在这个对象中的字符序列式不可改变的,直至这个对象被销毁. String s1 = "java"; s1 = s ...
- React的生命周期
我们先来看一张图,其实看完这张图基本就懂了,如果还不懂,请继续往下看. getDefaultProps 执行过一次后,被创建的类会有缓存,映射的值会存在this.props,前提是这个prop不是父组 ...
- vsftpd配置seccomp_sandbox=NO
在ubuntu14.04 配置vsftp时如果不加上seccomp_sandbox=NO这一句会出现莫名的530错误
- Kafka consumer处理大消息数据问题
案例分析 处理kafka consumer的程序的时候,发现如下错误: ERROR [2016-07-22 07:16:02,466] com.flow.kafka.consumer.main.Kaf ...
- 微信小程序数据请求方法wx.request小测试
微信小程序数据请求方法 wx.request wxml文件: <view> <textarea value="{{textdata}}"/> </vi ...