PHP
长发卜及腰
研究一门语言,即便不打算马上上手用它,也有助于开阔视野。
展开
-
PHP面向对象(十)- 多态性
PHP面向对象(十)- 多态性1. 通过继承实现多态多态性:统一操作作用于不同类的实例,将产生不同的执行结果(即不同类的对象收到相同消息时,得到不同的结果)在PHP中,实现多态的方法有两种:(1)通过继承(2)通过接口例子:abstract class Vegetables{ //定义抽象类 abstract function go_Vegetables(); //定义抽象方法}class Vegetables_potato extend原创 2021-03-25 13:53:54 · 187 阅读 · 0 评论 -
PHP面向对象(九)- 类型运算符 instanceof
用于确定一个 PHP 变量是否属于某一类 class 的实例//例:对类使用instanceofclass Test1 { }class Test2 { }$t1 = new Test1;var_dump($t1 instanceof Test1); //bool(true)var_dump($t1 instanceof Test2); //bool(false)也可用来确定一个变量是不是继承自某一父类的子类的实例//例:对继承类使用instanceofclass Tes转载 2021-03-25 13:47:29 · 120 阅读 · 0 评论 -
PHP面向对象(八)- 类的继承与接口
class roomtypes{ public $customertype; //公共属性 private $hotelname="GoodHome"; //自有属性 protected $roomface="适合所有人"; //可以继承的属性 function __construct(){ //声明构造方法,执行初始化任务;当通过new实例化的时候,就会被调用执行 $this->customertype="everyonefi原创 2021-03-25 13:39:53 · 123 阅读 · 0 评论 -
PHP面向对象(七)- 接口
继承特性简化了对象和类的创建,增加了代码的可重用型。但是PHP只支持单继承,如果想实现多继承,就需要使用接口。PHP可以实现多个接口。接口通过关键字interface来声明。注意:接口中不能声明变量,只能使用关键字const声明为常量的成员属性。接口中声明的方法必须是抽象方法。接口中所有的成员都必须具有public访问权限。语法格式:interface 接口名称{ //常量成员 //抽象方法}与继承使用extends关键字不同的是,实现接口使用的是imp原创 2021-03-23 20:24:28 · 868 阅读 · 0 评论 -
PHP面向对象(六)-抽象类
抽象类和接口都是特殊的类,因为它们都不能被实例化。抽象类只能作为父类使用,因为抽象类不能被实例化。抽象类使用关键字abstract声明。语法格式如下:abstract class 抽象类名称 { //抽象类的成员变量列表 abstract function 成员方法1(参数); //抽象类的成员方法 abstract function 成员方法2(参数); //抽象方法必须使用关键字abstract来修饰,抽象方法后必须有分号。}抽象类和普通类的主要区别:抽象类的方原创 2021-03-23 20:19:51 · 324 阅读 · 0 评论 -
PHP面向对象(五)-final类和方法
从PHP5开始,新增了一个final关键字。如果父类中的方法被声明为final,则子类无法赋给该方法。如果一个类被声明为final,则不能被继承。1) final方法不能被重写如果希望类中的某个方法不能被子类重写,就可以设置该方法为final方法,只需要在方法前加上final修饰符即可。如果这个方法被子类重写,将会出现错误。例子:class Math { //计算两个数值的和 public final function Sum($a,$b){ return $原创 2021-03-23 20:15:53 · 222 阅读 · 0 评论 -
PHP面向对象(四)- 静态属性和方法
静态属性和方法声明类属性或方法为static(静态),可以不实例化类而直接访问。静态属性不能通过一个类已实例化的对象来访问(但静态方法可以)。静态属性不可以由对象通用->操作符来访问。自PHP 5.3.0起,可以用一个变量来动态调用类,但该变量的值不能为关键字self、parent或static。伪变量$this在静态方法中不可用。(原因:静态方法不需要通过对象即可调用。)静态属性不需要实例化就可以直接使用,调用格式为“类名::静态属性名”。静态方法不需要实例化就可以直接使用,调用格式为原创 2021-03-18 15:39:28 · 387 阅读 · 0 评论 -
PHP面向对象(三)访问方法、类的继承
访问方法(accessor)OOP思想并不鼓励直接从类的外部访问类的属性,以强调封装性,因此可以使用_get 和 _set 方法来达到访问方法的目的。可以避免直接对类属性的访问。无论何时,类属性被访问和操作,访问方法都会被激发。例子://实例:介绍访问访问的使用和技巧class guests{ public $property; function __set($propName,$propValue){ //$propName为属性名,$propValue为属性值原创 2021-03-18 15:37:55 · 187 阅读 · 0 评论 -
PHP面向对象(二)- 构造方法和析构方法
1 构造方法构造方法:构造方法存在于每个声明的类中,它执行一些初始化的任务。如果类中没有直接声明构造方法,那么类会默认生成一个没有参数且内存为空的构造方法。声明构造方法,名称必须以两个下划线开头,即"__construct"注意,构造方法是不能返回(return)值的。构造方法特性:当通过关键字new生成实例的时候,它就会被调用执行。作用:对一些属性进行初始化,即给一些属性进行初始化的赋值。一个类只能声明一个构造方法。构造方法中的参数是可选的,如果没有传入参数,就将使用默认参数为成员变原创 2021-03-16 19:33:04 · 408 阅读 · 0 评论 -
PHP面向对象(一)- 类的声明和实例化
智一面PHP面向对象(一)- 类的声明和实例化1. 类和对象的介绍类和对象先定义“类”,再由“类”产生一个个“实体”,也就是一个个“对象”。面向对象编程(OOP)对象(object)在 OOP 中是由属性和操作组成的。属性(attributes)就是对象的特性或与对象关联的变量。操作(operation)就是对象中的方法(method)或函数(function)。OOP 最重要的特性之一是可封装性。对对象内部数据的访问只能通过对象的“操作”来完成,这也被称为对象的“接口”(inter原创 2021-03-16 19:27:46 · 853 阅读 · 0 评论