PHP5 面向对象(学习记录)

yipeiwu_com6年前PHP代码库
1,继承extends 只能单继承
public protected private 属性
__construct()
__destruct()
__get()读取私有成员
__set($n,$v) 设置私有成员
2,访问父类函数 :: (c++里面也叫作用域符)
7
3,重载 和 父类名字相同的 函数

4,抽象类 abstract 必须继承 不能被实例话 并且 必须要重写抽象函数 只要类中有一个函数是静态的 那么类必须为静态

5,常用关键字
1,final 定义类的时候 类 不能被继承 定义 函数时 函数 不能 重载
2,self 用来访问未实例化类中的属性或者方法 (静态或者常量) 使用方法 self::属性
3,static 定义静态成员或者方法只会在内存出现一次 (静态方法内 不能出现非静态内容)
4,const 定义常量 只能修饰成员属性 修饰的常量 不加 $
6,接口的应用 interface接口定义关键字 implements引用
接口:全部为抽象方法,不用加 abstract 属性 应该为常量
interface Demo{}
class T implements Demo{} 可以引用多个接口
先继承后接口 class a extends root implements Demo{}
接口继承接口 interface D extends Demo

7,多态 php 是 弱类型语言 所以支持不是很完美
instanceof 测试 一个实例是否来自一个类 example: a{} $c = new a; if($c instanceof a)
8,对象 作为参数传递 给函数 时 不运行 构造函数 并且 并非是复制副本,而是传递对象地址

9,对象 描述配置 __tostring(){内容} 直接echo 对象

10,对象 异常处理 __call($name,$value) 调用不存在的方法名时 自动吸收 你的错误 并且显示$name 和 错误参数的 值

11,对象克隆 __clone()放在 类里面 clone关键字 (相当与c++的拷贝函数)

12,自动载入 function __autoload($class_n){
include($class_n.'php');
} 当自行 new 一个类时 自动载入 inlcude()一个类

相关文章

解析curl提交GET,POST,Cookie的简单方法

复制代码 代码如下:<?php$get_data = array (    "get1"=> "get1",   ...

详解PHP中的状态模式编程

详解PHP中的状态模式编程

定义 状态模式,又称状态对象模式(Pattern of Objects for State),状态模式就是对象的行为模式。状态模式允许一个对象在其内部状态改变的时候改变其行为。这个对象看...

PHP中调试函数debug_backtrace的使用示例代码

PHP中调试函数debug_backtrace的使用示例代码

前言 如果我们想知道某个方法被谁调用了? debug_backtrace可以解决。debug_backtrace() 可以打印出一个页面的调用过程 , 从哪儿来到哪儿去一目了然。...

ThinkPHP采用模块和操作分析

任何一个WEB行为都可以认为是一个模块的某个操作,系统会根据当前的URL来分析要执行的模块和操作。这个分析工作由URL调度器来实现,官方内置了Dispatcher类来完成该调度。 在Di...

验证坐标在某坐标区域内php代码

验证坐标在某坐标区域内php代码

之前碰到的这样一个需求,要将公司的服务在地图中显示出来,并将用户每天的访问坐标进行统计看有多少用户是在所能达到的服务范围半径内。 以下是PHP代码的实现 (仅验证坐标在某片坐标区域内)...