多态(运行多态)
概念:当父类引用指向子类实例,由于子类里面对父类的方法进行了重写,父类引用在调用该方法的时候表现出的不同状态。
条件:
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. 使用 python 获取 httpd 程序所占用物理内存

    #!/usr/bin/env python #encoding: utf-8 ''' 思路: /proc/xx_pid/status 文件中的关键字段 VmRSS 来获取某个进程占用的物理内存 步骤: ...

  2. 自定义样式RatingBar的使用

    1.设置布局文件,自定义ratingbar样式 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/an ...

  3. 强大的DOM变化观察者MutationObserver

    在这之前 DOM3 提供了 Mutation events 事件 DOMAttrModified DOMAttributeNameChanged DOMCharacterDataModified DO ...

  4. GIT/node使用

    一. 为不同域名的库自动保存不同的用户名和密码 比如 公司的库是 http://source.sohu.com,另一个是 http://www.github.com,命令行中分别两个命令就搞定了 gi ...

  5. Redis学习笔记1-Redis的介绍和认识

    说明:文章内容来自百度百科和redis官方对redis的介绍 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API ...

  6. 理解Docker(2):Docker 镜像

    本系列文章将介绍Docker的有关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 Linux namespace 隔离容器的运行环境 ...

  7. Java程序设计之最大公约数和最小公倍数

    题目:输入两个正整数number1和number2,求其最大公约数和最小公倍数. 算法:较大数和较小数取余,较小数除余数,一直到余数为0时,为最大公约数(辗转相除法):最大公倍数numbe1*numb ...

  8. VPS搭建VPN、BLOG

    FQ的正确姿势,你掌握了多少?老司机带你去墙外看看,来开车了坐稳! 购买VPS主机(服务端) 推荐性价比较高的VPS 搬瓦工https://bandwagonhost.com/ 上面的链接如果你打不开 ...

  9. .net Global.asax文件使用

    一.Application_start: 第一个访问网站的用户会触发该方法. 通常会在该方法里定义一些系统变量,如聊天室的在线总人数统计,历史访问人数统计的初始化等等均可在这里定义. Applicat ...

  10. java多线程系类:JUC线程池:03之线程池原理(二)(转)

    概要 在前面一章"Java多线程系列--"JUC线程池"02之 线程池原理(一)"中介绍了线程池的数据结构,本章会通过分析线程池的源码,对线程池进行说明.内容包 ...