多态(运行多态)
概念:当父类引用指向子类实例,由于子类里面对父类的方法进行了重写,父类引用在调用该方法的时候表现出的不同状态。
条件:
1.必须发生在继承下
2.必须重写父类方法
3.父类引用调用该方法

如果一个方法需要一个父类参数,可以给一个子类对象。

//静态
//普通成员是属于对象的 //静态成员
//静态成员是属于类的
//关键字:static
//self关键字:在类里面代表类
//在静态方法里面不能调用普通成员
//普通方法里面可以调用静态成员 /*class Fenbi
{
public $length;//粉笔的长度,定义成普通的成员。
public static $color;//粉笔的颜色,定义成静态的成员。static定义静态的关键字。 static function Show()
{
echo "粉笔颜色是:".self::$color;//self换成类名Fenbi也可以,self在类里面代表该该类,this在类里面代表该对象。
}
function Xianshi()
{
echo "显示:".self::$color;
}
}
$f = new Fenbi();//先造一个对象
$f->length;//用对象去调用普通成员
Fenbi::$color = "红色";
//Fenbi::show();//调用静态方法,不用
Fenbi::$color;//因为静态成员是属于类的,所以要使用类名调用静态成员
$f->Xianshi();
*/

抽象:

//抽象
//抽象类:关键字abstract
//特点:不能被实例化,只能被继承。
//目的:为了派生子类,控制子类
/*abstract class Dog
{
public $name;
function Jiao()
{
echo "汪汪";
}
}
//$d = new Dog();//不能造出dog对象
class Jianmao extends Dog//金毛的类继承dog的类
{ }*/

接口:

//接口
//极度抽象的类
//接口里面不能包含成员变量,只能包含成员方法。
//成员方法没有函数体
//接口关键字:interface
//实现接口的类,必须实现接口里面的所有方法。 /*interface IUSB//接口名称一般是I(大写)开头
{
function read();//读的方法
function write();//写的方法
} //鼠标的驱动类
class Mouse implements IUSB
{
function read()
{
echo "鼠标插入了";
}
function write()
{
echo "给鼠标一个指令";
}
} //键盘驱动类
class Jianpan implements IUSB
{
function read()
{
echo "键盘输入了内容";
}
function write()
{
echo "给键盘一个指令";
}
} $m = new Mouse();
$m->read(); $j = new Jianpan();
$j->read();
 
 

10月25日下午PHP静态、抽象、接口的更多相关文章

  1. 2016年10月25日 星期二 --出埃及记 Exodus 19:9

    2016年10月25日 星期二 --出埃及记 Exodus 19:9 The LORD said to Moses, "I am going to come to you in a dens ...

  2. 北京Uber优步司机奖励政策(10月19日~10月25日)

    用户组:优步北京人民优步A组(适用于10月19日-10月25日) 滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万 ...

  3. 10月24日下午PHP封装

    class Ren { private $name; private $sex; private $age;//年龄必须在18-50岁之间 function __construct($n) { $th ...

  4. 10月21日下午PHP常用函数

    函数四要素:返回类型  函数名  参数列表  函数体 //最简单的函数定义方式 function Show() { echo "hello"; } Show();//输出结果为he ...

  5. 10月16日下午MySQL数据库CRUD操作(增加、删除、修改、查询)

    1.MySQL注释语法--,# 2.2.后缀是.sql的文件是数据库查询文件. 3.保存查询. 关闭查询时会弹出提示是否保存,保存的是这段文字,不是表格(只要是执行成功了表格已经建立了).保存以后下次 ...

  6. 10月30日下午 PHP精确查询(模糊查询、模糊+关键字共同查询)

    1.一个条件的模糊查询 <body> <br /> <form action="main.php" method="post"&g ...

  7. 10月28日下午MySQL数据库的增加、删除、查询(匹配数据库登录和可以增、删、查的显示数据库内容的页面))

    一.匹配数据库登录 步骤: 1.做一个普通的登录界面,注意提交方式为post. <!--登录界面--> <form action="chuli.php" meth ...

  8. 10月25日上午PHP继承多态

    概念:子类可以继承父类的一切 方法重写:在子类里面对父类的方法进行重写,实现自己独特的功能.特点:单继承:一个子类只能有一个父类,一个父类可以派生出多个子类.override重写(子类对父类的重写) ...

  9. 10月17日下午MySQl数据库CRUD高级查询

    高级查询:1.连接查询 #适用于有外键关系的  没有任何关系没法用select * from Info,Nation #同时查询这俩表并把两表每个数据相互组合,形成笛卡尔积 select * from ...

随机推荐

  1. android break 与 return 的区别

    break 的含义是中断,return 的含义是结束整个方法的执行. 区别. public static void main(String agrs[]){ int i; for(i=0;i<1 ...

  2. linux中文件(档案)和目录的RWX权限意义

    1 权限对文件的意义 权限对文件的意义很好理解,下面我们看看权限对目录的意义. 2 权限对目录的意义 档案是存放实际资料的所在,那么目录主要是储存啥玩意啊?目录主要的内容在记录档名清单,档名与目录有强 ...

  3. Nodejs以后台服务启动

    1: 从网上查找  LINUX中我们可以使用这种简单的方式让node.js在后台运行: nohup node your_app.js & 经多次实验一直没有成功   2:使用 forever ...

  4. 前端构建工具gulp使用

    前端自动化流程工具,用来合并文件,压缩等. Gulp官网 http://gulpjs.com/ Gulp中文网 http://www.gulpjs.com.cn/ Gulp中文文档 https://g ...

  5. [转载]python:open/文件操作

    open/文件操作f=open('/tmp/hello','w') #open(路径+文件名,读写模式) #读写模式:r只读,r+读写,w新建(会覆盖原有文件),a追加,b二进制文件.常用模式 如:' ...

  6. 一切Web的基础----HTTP

    HTTP 是基于 TCP/IP 协议的应用层协议.它不涉及数据包(packet)传输,主要规定了客户端和服务器之间的通信格式,默认使用80端口.HTTP协议基于TCP连接,该协议针对TCP连接上的数据 ...

  7. 第1章 重构,第一个案例(1):糟糕的statement函数设计

    1. 启航:影片出租,计算每一位顾客的消费金额并打印清单 1.1 场景说明: (1)影片分类规则:普通片.儿童片和新片等3类 (2)每种影片计算租金的方式. ①普通片:基本租金为2元,超过2天的部分每 ...

  8. Unity3D脚本行尾(Line Endings)

    行尾不一致(inconsistent line endings ) 开发环境 有时候编辑Unity的脚本文件,代码diff之后,或者从svn更新文件之后,Unity中会出现行尾不一致的信息. 我的开发 ...

  9. MySQL的基本知识 -- 命令

    1.数据库和表 SHOW DATABASES; 返回可用数据库的一个列表 SHOW TABLES; 返回一个数据库内的表的列表 SHOW COLUMNS FROM tableName; 返回数据表的表 ...

  10. git教程链接

    http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000