10月25日下午PHP静态、抽象、接口
多态(运行多态)
概念:当父类引用指向子类实例,由于子类里面对父类的方法进行了重写,父类引用在调用该方法的时候表现出的不同状态。
条件:
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静态、抽象、接口的更多相关文章
- 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 ...
- 北京Uber优步司机奖励政策(10月19日~10月25日)
用户组:优步北京人民优步A组(适用于10月19日-10月25日) 滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万 ...
- 10月24日下午PHP封装
class Ren { private $name; private $sex; private $age;//年龄必须在18-50岁之间 function __construct($n) { $th ...
- 10月21日下午PHP常用函数
函数四要素:返回类型 函数名 参数列表 函数体 //最简单的函数定义方式 function Show() { echo "hello"; } Show();//输出结果为he ...
- 10月16日下午MySQL数据库CRUD操作(增加、删除、修改、查询)
1.MySQL注释语法--,# 2.2.后缀是.sql的文件是数据库查询文件. 3.保存查询. 关闭查询时会弹出提示是否保存,保存的是这段文字,不是表格(只要是执行成功了表格已经建立了).保存以后下次 ...
- 10月30日下午 PHP精确查询(模糊查询、模糊+关键字共同查询)
1.一个条件的模糊查询 <body> <br /> <form action="main.php" method="post"&g ...
- 10月28日下午MySQL数据库的增加、删除、查询(匹配数据库登录和可以增、删、查的显示数据库内容的页面))
一.匹配数据库登录 步骤: 1.做一个普通的登录界面,注意提交方式为post. <!--登录界面--> <form action="chuli.php" meth ...
- 10月25日上午PHP继承多态
概念:子类可以继承父类的一切 方法重写:在子类里面对父类的方法进行重写,实现自己独特的功能.特点:单继承:一个子类只能有一个父类,一个父类可以派生出多个子类.override重写(子类对父类的重写) ...
- 10月17日下午MySQl数据库CRUD高级查询
高级查询:1.连接查询 #适用于有外键关系的 没有任何关系没法用select * from Info,Nation #同时查询这俩表并把两表每个数据相互组合,形成笛卡尔积 select * from ...
随机推荐
- W3School-CSS 轮廓(Outline)实例
CSS 轮廓(Outline)实例 CSS 实例 CSS 背景实例 CSS 文本实例 CSS 字体(font)实例 CSS 边框(border)实例 CSS 外边距 (margin) 实例 CSS 内 ...
- Linux – Usermod命令参数解析和实例说明
usermod 命令修改系统帐户文件来反映通过命令行指定的变化 1. 首先看看usermod都是有哪些参数 [root@hxweb101 ~]$ usermod --help Usage: userm ...
- java类加载器深入研究
看了下面几篇关于类的加载器的文章,豁然开朗.猛击下面的地址开始看吧. Java类加载原理解析 深入探讨 Java 类加载器 分析BootstrapClassLoader/ExtClassLo ...
- jsp/servlet 中sendRedirect,include,forward区别
1 sendRedirect response.sendRedirect(); 服务器根据逻辑,发送一个状态码,告诉浏览器重新去请求新的地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以sess ...
- java中System.getenv和System.getProperties的区别
System.getenv获取的是系统的环境变量(就是用户在操作系统中设置的环境变量),windows和linux下环境变量的设置就不说了哦. System.getProperties获取的是系统的相 ...
- [Django]网页中利用ajax实现批量导入数据功能
url.py代码: url(r'^workimport/$', 'keywork.views.import_keywork', name='import_keywork') view.py代码: fr ...
- Oracle存储过程基本语法介绍
Oracle存储过程基本语法 存储过程 1 CREATE OR REPLACE PROCEDURE 存储过程名 2 IS 3 BEGIN 4 NULL; 5 END; 行1: CREATE OR RE ...
- HIbernate二级缓存
一.定义: 二级缓存是进程或集群范围内的缓存,可以被所有的Session共享,是可配置的插件 二.二级缓存原理图 解析:每次从二级缓存中取出的对象,都是一个新的对象. 三.配置步骤如下: 同理:以员工 ...
- codevs 1015 计算器的改良 2000年NOIP全国联赛普及组
时间限制: 1 s 空间限制: 128000 KB 题目等级 : 白银 Silver 题目描述 Description NCL是一家专门从事计算器改良与升级的实验室,最近该实验室收到了某公司所委 ...
- rsyslog及logrotate小结
[root@node1 logrotate.d]# ls dracut haproxy httpd mcelog nginx ppp psacct syslog yum yum install n ...