011-对象——interface接口说明与使用方式实例
<?php /** interface接口说明与使用方式实例
*
* 接口里面的方法全是抽象方法,没有实体的方法。这样的类我们就叫做接口。定义的时候用Interface定义。实现接口时用implements。 * 我们的PHP不能多继承。接口可以继承多个接口。
*/ /*interface bing
{
function shengao(); //测量视力:
function sili(); //政治审核
function zengzi();
} //步兵
class bubing implements bing
{
function shengao(){ } //测量视力:
function sili(){ } //政治审核
function zengzi(){ }
} //空军
class kongjun implements bing
{
function shengao(){ } //测量视力:
function sili(){ } //政治审核
function zengzi(){ }
} //海军
class haijun implements bing
{
function shengao(){ } //测量视力:
function sili(){ } //政治审核
function zengzi(){ }
}*/ //usb接口实现的一些动作:
interface usb{
function connect(); //设备和usb链接实现的一些内容
function quit(); //设备和usb断开时实现的一些内容
}
//插线板的接口
interface chaxianban{
const DIANYA="220V";
function charu();//插入
function bachu();//拔出
}
//数码相机,插在电脑上,弹出图片浏览器。U盾 1装驱动 2打开浏览器 手机插在电脑上 //shouji继承了usb和chaxxianban两个接口:
class shouji implements usb,chaxianban {
function connect()
{
echo "手机usb链接时在充电,显示手机内容<br/>";
}
function quit(){
echo "手机usb退出时停止充电";
}
function charu(){
echo "手机通过".self::DIANYA."插线板充电<br/>";
}
function bachu(){
echo "手机离开".self::DIANYA."从插线板上拔出<br/>";
}
} class xiangji implements usb{
function connect()
{
echo "相机在充电,显示图片";
}
function quit(){
echo "相机退出.....";
}
} //插线板:
class cxb{
function charu($obj){
$obj=new $obj();
$obj->charu();
}
function bachu($obj){
$obj=new $obj();
$obj->bachu();
}
}
$cxb=new cxb();
//$cxb->charu("shouji"); $cxb->bachu("shouji"); class pc{
function usbConnect($usb){
$obj=new $usb();
$obj->connect();
}
function usbQuit($usb){
$obj=new $usb();
$obj->quit();
}
}
$sony=new pc();
$sony->usbQuit('shouji'); //文章管理 分类信息栏目 论坛管理 商城栏目 图集栏目
/*interface channel{
function edit();
function del();
}
class arcChannel implements channel{
function edit()
{
echo "文章栏目管理";
}
function del()
{
echo"文章栏目删除";
}
} class infoChanel implements channel{
function edit()
{
echo "分类信息栏目管理";
}
function del()
{
echo"分类信息栏目删除";
}
}
class admin{
function channel($type,$action){
$channel=new $type();
$channel->$action();
}
}
$type=$_GET['m'];
$action=$_GET['a'];
$admin=new admin();
$admin->channel($type,$action);
//浏览器输入地址:http://phpbasic.com/004object/11.php?m=arcChannel&a=edit*/
011-对象——interface接口说明与使用方式实例的更多相关文章
- java中什么是Interface接口, 请给个实例!
1.Interface接口的定义和用法 先直接上大白话:马克-to-win:接口就是灰常灰常抽象的抽象类,我们可以就像用抽象类一样用接口,只不过,interface抽象到不能再抽象了,以至于里面不能 ...
- 2.9_Database Interface ADO结构组成及连接方式实例
说通俗点OLE DB和ODBC都是最底层的东西,而ADO对象给我们提供了一个“可视化”和应用层直接交互的组件,ADO对象T通过OLE DB间接取得数据库中的数据,如下图: 从上面看出,可以说ADO是应 ...
- JAVAEE——Mybatis第一天:入门、jdbc存在的问题、架构介绍、入门程序、Dao的开发方法、接口的动态代理方式、SqlMapConfig.xml文件说明
1. 学习计划 第一天: 1.Mybatis的介绍 2.Mybatis的入门 a) 使用jdbc操作数据库存在的问题 b) Mybatis的架构 c) Mybatis的入门程序 3.Dao的开发方法 ...
- Kotlin基础(三)类、对象和接口
类.对象和接口 一.定义类的继承结构 一)Kotlin中的接口 Kotlin的接口与Java8中相似,它们可以包含抽象方法的定义以及非抽象方法的实现,但它们不能包含任何状态. interface Cl ...
- JAVA 构造器, extends[继承], implements[实现], Interface[接口], reflect[反射], clone[克隆], final, static, abstrac
记录一下: 构造器[构造函数]: 在java中如果用户编写类的时候没有提供构造函数,那么编译器会自动提供一个默认构造函数.它会把所有的实例字段设置为默认值:所有的数字变量初始化为0;所有的布尔变量设置 ...
- java 面向对象(二十四):interface:接口
interface:接口1.使用说明: 1.接口使用interface来定义 * 2.Java中,接口和类是并列的两个结构 * 3.如何定义接口:定义接口中的成员 * * 3.1 JDK7及以前:只能 ...
- C#实现接口的两种方式:显示实现和隐式实现接口
本示例声明一个接口IDimensions 和一个类 Box,显式实现了接口成员 GetLength 和 GetWidth. 通过接口实例 dimensions 访问这些成员. interface ID ...
- ArcGIS Engine开发之旅08--和查询相关的对象和接口
原文:ArcGIS Engine开发之旅08--和查询相关的对象和接口 查询在GIS领域应该是一个很频繁的操作,在GIS中除了具有属性查询(和其他关系型数据库的查询类似),还提供了空间查询.在介绍查询 ...
- as3.0 interface接口使用方法
[转]as3.0 interface接口使用方法 AS在2.0的时候就支持接口了 接口能够让你的程序更具扩展性和灵活性,打个例如 比方你定义了一个方法 代码: public function aMet ...
随机推荐
- tornado requesthandler可以重写的方法
一 :RequestHandler 一般我们继承tornado.web.RequestHandler 1,RequestHandler.initialize()一般用于初始化,第三个字典参数传入 cl ...
- (转)基于深度学习的目标检测技术演进:R-CNN、Fast R-CNN、Faster R-CNN
object detection我的理解,就是在给定的图片中精确找到物体所在位置,并标注出物体的类别.object detection要解决的问题就是物体在哪里,是什么这整个流程的问题.然而,这个问题 ...
- hibernate自动建表之engine设置
1.MYSQL的数据库引擎中,只有InnoDB和BDB(Berkley DB )包括了对事务处理和外键的支持.如果数据引擎建为MyISAM则rollback无效. 2.而hibernate自动建表的时 ...
- kotlin-plugin-1.1.2-release-Studio2.3-1.zip 下载地址
1 官方下载地址,下载较慢,我家100m联通光纤,下载也就120k左右 http://jetbrains-plugins.s3.amazonaws.com/6954/34562/kotlin-plug ...
- Q35+uefi or bios+legacy // PCI | PCIE
1:首先统一可扩展固件接口(UEFI)是一种规范定义操作系统和平台固件之间的软件接口. UEFI旨在替代基本输入/输出系统(BIOS)固件接口.(legacy) 硬件平台厂商越来越多地采用UEFI管理 ...
- 用Maven构建Mahout项目实现协同过滤ItemCF--集群版
本文来自于:http://blog.fens.me/hadoop-mahout-mapreduce-itemcf/ 前言 Mahout是Hadoop家族一员,从血缘就继承了Hadoop程序的特点,支持 ...
- LeetCode:全排列II【47】
LeetCode:全排列II[47] 参考自天码营题解:https://www.tianmaying.com/tutorial/LC47 题目描述 给定一个可包含重复数字的序列,返回所有不重复的全排列 ...
- linq中将int类型转换为string类型,toString()报错
今天同事在调试程序的时候,报了一个不寻常的错误, “LINQ to Entities 不识别方法"System.String ToString()",因此该方法无法转换为存储表达式 ...
- 对象序列化与反序列化local class incompatible
无论eclipse还是idea(默认关闭序列化提示,需手动打开),都可以自动生成相应的序列号,分为两类1L,XXXL. 当然如果不指定,系统也会自动生成,但是存在隐性风险 ,不同的编译器对同一个对象可 ...
- Linux x86架构下ACPI PNP Hardware ID的识别机制
转:https://blog.csdn.net/morixinguan/article/details/79343578 关于Hardware ID的用途,在前面已经大致的解释了它的用途,以及它和AC ...