电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

PHP的面向對象編程:開發大型PHP項目的方法(二)

瀏覽:4日期:2023-12-29 13:32:22
作者:Luis Argerich 譯者:limodou "Another"類的對象現在擁有了父類(Something)的全部的數據成員及方法,而且還加上了自已的數據成 員和方法。 你可以使用 $obj2=new Something; $obj2->setX(6); $obj2->setY(7); PHP現在還不支持多重繼承,所以你不能從兩個或兩個以上類派生出新的類來。 你可以在派生類中重定義一個方法,如果我們在"Another"類中重定義了getX方法,我們就不能使 用"Something"中的getX方法了。如果你在派生類中聲明了一個與基派同名的數據成員,那么當你處理它時, 它將“隱藏”基類的數據成員。 你可以在你的類中定義構造函數。構造函數是一個與類名同名的方法,當你創建一個類的對象時會被調 用,例如: -------------------------------------------------------------------------------- <?php class Something { var $x; function Something($y) { $this->x=$y; } function setX($v) { $this->x=$v; } function getX() { return $this->x; } } ?>-------------------------------------------------------------------------------- 所以你可以創建一個對象,通過: $obj=new Something(6); 構造函數會自動地把6賦值給數據變量x。構造函數和方法都是普通的PHP函數,所以你可以使用缺省參數。 function Something($x="3",$y="5") 接著: $obj=new Something(); // x=3 and y=5 $obj=new Something(8); // x=8 and y=5 $obj=new Something(8,9); // x=8 and y=9 缺省參數使用C++的方式,所以你不能忽略Y的值,而給X一個缺省參數,參數是從左到右賦值的,如果 傳入的參數少于要求的參數時,其作的將使用缺省參數。 當一個派生類的對象被創建時,只有它的構造函數被調用,父類的構造函數沒被調用,如果你想調用基 類的構造函數,你必須要在派生類的構造函數中顯示調用??梢赃@樣做是因為在派生類中所有父類的方法都 是可用的。 -------------------------------------------------------------------------------- <?php function Another() { $this->y=5; $this->Something(); //顯示調用基類構造函數 } ?>-------------------------------------------------------------------------------- OOP的一個很好的機制是使用抽象類。抽象類是不能實例化,只能提供給派生類一個接口。設計者通常 使用抽象類來強迫程序員從基類派生,這樣可以確保新的類包含一些期待的功能。在PHP中沒有標準的方法, 但是: 如果你需要這個特性,可以通過定義基類,并在它的構造函數后加上"die" 的調用,這樣就可以保證基 類是不可實例化的,現在在每一個方法(接口)后面加上"die" 語句,所以,如果一個程序員在派生類中沒有 覆蓋方法,將引發一個錯誤。而且因為PHP 是無類型的,你可能需要確認一個對象是來自于你的基類的派生 類,那么在基類中增加一個方法來實義類的身份(返回某種標識id),并且在你接收到一個對象參數時校驗 這個值。當然,如果一個邪惡不好的程序員在派生類中覆蓋了這個方法,這種方法就不起作用了,不過一般 問題多發現在懶惰的程序員身上,而不是邪惡的程序員。 當然,能夠讓基類對程序員無法看到是很好的,只要將接口打印出來做他們的工作就可以了。 在PHP中沒有析構函數。
標簽: PHP
主站蜘蛛池模板: 深圳展厅设计_企业展馆设计_展厅设计公司_数字展厅设计_深圳百艺堂 | 上海租车公司_上海包车_奔驰租赁_上海商务租车_上海谐焕租车 | 撕碎机_轮胎破碎机_粉碎机_回收生产线厂家_东莞华达机械有限公司 | 芝麻黑-芝麻黑石材厂家-永峰石业 | 井式炉-台车式回火炉-丹阳市电炉厂有限公司 | SMN-1/SMN-A ABB抽屉开关柜触头夹紧力检测仪-SMN-B/SMN-C-上海徐吉 | 聚氨酯保温钢管_聚氨酯直埋保温管道_聚氨酯发泡保温管厂家-沧州万荣防腐保温管道有限公司 | SPC工作站-连杆综合检具-表盘气动量仪-内孔缺陷检测仪-杭州朗多检测仪器有限公司 | 济南冷库安装-山东冷库设计|建造|冷库维修-山东齐雪制冷设备有限公司 | 单螺旋速冻机-双螺旋-流态化-隧道式-食品速冻机厂家-广州冰泉制冷 | 全自动不干胶贴标机_套标机-上海今昂贴标机生产厂家 | 硬质合金模具_硬质合金非标定制_硬面加工「生产厂家」-西迪技术股份有限公司 | 求是网 - 思想建党 理论强党| 广州网站建设_小程序开发_番禺网站建设_佛山网站建设_粤联网络 | 珠海白蚁防治_珠海灭鼠_珠海杀虫灭鼠_珠海灭蟑螂_珠海酒店消杀_珠海工厂杀虫灭鼠_立净虫控防治服务有限公司 | 别墅图纸超市|别墅设计图纸|农村房屋设计图|农村自建房|别墅设计图纸及效果图大全 | 轻型地埋电缆故障测试仪,频响法绕组变形测试仪,静荷式卧式拉力试验机-扬州苏电 | 玉米深加工设备|玉米加工机械|玉米加工设备|玉米深加工机械-河南成立粮油机械有限公司 | 100_150_200_250_300_350_400公斤压力空气压缩机-舰艇航天配套厂家 | 智慧水务|智慧供排水利信息化|水厂软硬件系统-上海敢创 | 地图标注-手机导航电子地图如何标注-房地产商场地图标记【DiTuBiaoZhu.net】 | 隐形纱窗|防护纱窗|金刚网防盗纱窗|韦柏纱窗|上海青木装潢制品有限公司|纱窗国标起草单位 | 河南15年专业网站建设制作设计,做网站就找郑州启凡网络公司 | 机械立体车库租赁_立体停车设备出租_智能停车场厂家_春华起重 | 滚筒烘干机_转筒烘干机_滚筒干燥机_转筒干燥机_回转烘干机_回转干燥机-设备生产厂家 | 中央空调温控器_风机盘管温控器_智能_液晶_三速开关面板-中央空调温控器厂家 | 岸电电源-60HZ变频电源-大功率变频电源-济南诚雅电子科技有限公司 | 电子厂招聘_工厂招聘_普工招聘_小时工招聘信息平台-众立方招工网 | 别墅图纸超市|别墅设计图纸|农村房屋设计图|农村自建房|别墅设计图纸及效果图大全 | 污水提升器,污水提升泵,地下室排水,增压泵,雨水泵,智能供排水控制器-上海智流泵业有限公司 | T恤衫定做,企业文化衫制作订做,广告T恤POLO衫定制厂家[源头工厂]-【汉诚T恤定制网】 | 大功率金属激光焊接机价格_不锈钢汽车配件|光纤自动激光焊接机设备-东莞市正信激光科技有限公司 定制奶茶纸杯_定制豆浆杯_广东纸杯厂_[绿保佳]一家专业生产纸杯碗的厂家 | 海鲜池-专注海鲜鱼缸、移动海鲜缸、饭店鱼缸设计定做-日晟水族厂家 | 浙江上沪阀门有限公司| 电动卫生级调节阀,电动防爆球阀,电动软密封蝶阀,气动高压球阀,气动对夹蝶阀,气动V型调节球阀-上海川沪阀门有限公司 | 干粉砂浆设备-干粉砂浆生产线-干混-石膏-保温砂浆设备生产线-腻子粉设备厂家-国恒机械 | TPU薄膜_TPU薄膜生产厂家_TPU热熔胶膜厂家定制_鑫亘环保科技(深圳)有限公司 | 超声波成孔成槽质量检测仪-压浆机-桥梁预应力智能张拉设备-上海硕冠检测设备有限公司 | 网站建设-高端品牌网站设计制作一站式定制_杭州APP/微信小程序开发运营-鼎易科技 | 丹佛斯变频器-丹佛斯压力开关-变送器-广州市风华机电设备有限公司 | 南京PVC快速门厂家南京快速卷帘门_南京pvc快速门_世界500强企业国内供应商_南京美高门业 |