关于PHP中Object对象的笔记分享


Posted in PHP onJune 28, 2011

1.当将所有实例设为null,php会自动清除对象的引用。

2.建构子:__construct()

清除对象时自动执行的方法:__destruct()

也可以设置手动清除对象的方法:destroy或者clean_up

3.对象中的三种变量范围:public、private和protected。

4.对象中的常量属性可以使用const关键字,然后在对象外部以“对象名::属性名”的格式引用,在对象内部以“self::属性名”的格式引用。

5.在整个对象所有实例中通用的属性,就是静态属性,使用static关键字。

static与const的区别在于,const前只能使用public关键字,而static可以使用其他关键字。此外,static属性并非只读。

6.在整个对象所有实例中通用的方法,就是静态方法,也使用static关键字。

7.可以定义一个抽象类,用来定义界面。这种类只能被继承,而不能创造实例。在类内部,用abstract定义子类必须提供的方法。

凡是有abstract方法的类,必须在类名前使用abstract关键字。

abstract class Producr

8.在方法前加final关键字,可以防止子类override这个方法。

类名之前也可以加final关键字,这样就表明其他类不能继承它。

9.界面interface用来定义一系列抽象类的结构。

interface IProduct
{
... ...
}

abstract class Product implements Iproduct
{
......
}

10.
== 比较两个对象是否为同样类型,以及是否有同样的值。
=== 比较两个对象是否为同一个类的实例。

11.类的克隆:完全复制值。

$a = new SomeClass();
$b = clone $a;

可以定义一个__clone()函数,专门对克隆行为进行定制。

12.可以定义一个类的__toString()方法,对使用print和echo函数的行为进行定制。

13.get_class()函数:返回一个对象的类名。

14.可以在一个函数的参数前加类名,表示TypeHint。

15.可以定义一个__autoload()函数,它的参数就是php找不到定义的类名。可以在这个函数中定义如何自动加载。

PHP 相关文章推荐
生成静态页面的PHP类
Jul 15 PHP
PHP 快速排序算法详解
Nov 10 PHP
php禁止某ip或ip地址段访问的方法
Feb 25 PHP
php实现在多维数组中查找特定value的方法
Jul 29 PHP
php给图片添加文字水印方法汇总
Aug 27 PHP
WordPress中转义HTML与过滤链接的相关PHP函数使用解析
Dec 22 PHP
PHP的Laravel框架中使用AdminLTE模板来编写网站后台界面
Mar 21 PHP
php变量与数组相互转换的方法(extract与compact)
Dec 02 PHP
phpStudy配置多站点多域名和多端口的方法
Sep 01 PHP
PHP实现登录注册之BootStrap表单功能
Sep 03 PHP
php删除一个路径下的所有文件夹和文件的方法
Feb 07 PHP
php+js实现的拖动滑块验证码验证表单操作示例【附源码下载】
May 27 PHP
php dirname(__FILE__) 获取当前文件的绝对路径
Jun 28 #PHP
php新建文件自动编号的思路与实现
Jun 27 #PHP
调整优化您的LAMP应用程序的5种简单方法
Jun 26 #PHP
php开启安全模式后禁用的函数集合
Jun 26 #PHP
php设计模式 Adapter(适配器模式)
Jun 26 #PHP
php设计模式 Builder(建造者模式)
Jun 26 #PHP
php设计模式 DAO(数据访问对象模式)
Jun 26 #PHP
You might like
PHP4与PHP3中一个不兼容问题的解决方法
2006/10/09 PHP
php 文件上传后缀名与文件类型对照表(几乎涵盖所有文件)
2010/05/16 PHP
php之可变变量的实例详解
2017/09/12 PHP
php表单习惯用的正则表达式
2017/10/11 PHP
JS 创建对象(常见的几种方法)
2008/11/03 Javascript
基于jquery的实现简单的表格中增加或删除下一行
2010/08/01 Javascript
cookie在javascript中的使用技巧以及隐私在服务器端的设置
2012/12/03 Javascript
ie 7/8不支持trim的属性的解决方案
2014/05/23 Javascript
javascript验证邮件地址和MX记录的方法
2015/06/16 Javascript
BootStrap智能表单实战系列(三)分块表单配置详解
2016/06/13 Javascript
Google 地图叠加层实例讲解
2016/08/06 Javascript
angularjs ocLazyLoad分步加载js文件实例
2017/01/17 Javascript
JavaScript中清空数组的三种方式
2017/03/22 Javascript
Vue拖拽组件开发实例详解
2018/05/11 Javascript
Vue仿支付宝支付功能
2018/05/25 Javascript
JS实现获取word文档内容并输出显示到html页面示例
2018/06/23 Javascript
vue项目开发中setTimeout等定时器的管理问题
2018/09/13 Javascript
JS替换字符串中指定位置的字符(多种方法)
2020/05/28 Javascript
深入了解Vue动态组件和异步组件
2021/01/26 Vue.js
python使用自定义user-agent抓取网页的方法
2015/04/15 Python
python3.4用函数操作mysql5.7数据库
2017/06/23 Python
python实现名片管理系统
2018/11/29 Python
使用Python进行体育竞技分析(预测球队成绩)
2019/05/16 Python
pygame实现烟雨蒙蒙下彩虹雨
2019/11/11 Python
python如何获取apk的packagename和activity
2020/01/10 Python
服务器端jupyter notebook映射到本地浏览器的操作
2020/04/14 Python
Python实现汇率转换操作
2020/05/03 Python
CSS3 3D旋转rotate效果实例介绍
2016/05/03 HTML / CSS
CSS实现聊天气泡效果
2020/04/26 HTML / CSS
女大学生毕业找工作的自我评价
2013/10/03 职场文书
自动化专业毕业生自荐信
2013/11/01 职场文书
党员对照检查剖析材料
2014/10/13 职场文书
2015年酒店客房部工作总结
2015/04/25 职场文书
教你快速开启Apache SkyWalking的自监控
2021/04/25 Servers
Java字符串逆序方法详情
2022/03/21 Java/Android
Java实战之课程信息管理系统的实现
2022/04/01 Java/Android