PHP面向对象学习一:对象基础实践
来源:互联网 发布:破解软件密码 编辑:程序博客网 时间:2024/06/08 09:39
引语:阅读深入PHP《面向对象、模式实践》书实践
<?php/** * 对象基础归纳整理 (来源:深入PHP《面向对象、模式与实践》) * ===============知识点================ * 类和对象:声明类及实例化对象 * 构造方法:自动加载对象 * 基本数据类型和类的类型:为什么类型很重要 * 继承(inheritance) * 可见性:整合对象接口并保护类中的方法和属性不受干涉(public,protected,private) * ===============基本类型和PHP的类型检查函数============== * is_bool() ------ 布尔型 ------ 值为true/false * is_integer() ------ 整型 ------ 整数 * is_double() ------ 双精度型 ------ 有小数点的数字 * is_string() ------ 字符串 ------ 字符数据 * is_object() ------ 对象 ------ 对象 * is_array() ------ 数组 ------ 数组 * is_resource() ------ 资源 ------ 用于识别和处理外部资源(如数据库和文件)的句柄 * is_null() ------ NUll ------ 未分配的值 * ===============对象类型============= * shopProudctWriter类的write()方法 接受一个 shopProudct对象 * 为什么不直接在shopProudct类直接增加一个write()方法呢?答案是 划分责任区 * shopProudct类负责管理产品数据,shopProudctWriter类负责写入数据 * @author liuxinming */class shopProudct{private $title;//产品名称private $proudcerMainName;private $proudcerFirstName;protected $price;//产品价格private $discount;//产品折扣//构造方法会被自动调用,用来确保必要的属性被设置public function __construct($title,$firstName,$mainName,$price){$this->title=$title;$this->proudcerFirstName=$firstName;$this->proudcerMainName=$mainName;$this->price=$price;}//获取MainNamepublic function getProudcerMainName(){return $this->proudcerMainName;}//获取FirstNamepublic function getProudcerFirstName(){return $this->proudcerFirstName;}//设置折扣public function setDiscount($num){$this->discount=$num;}//获取折扣public function getDiscount(){return $this->discount;}//获取产品标题public function getTitle(){return $this->title;}//获取折扣后的价格public function getPrice(){return $this->price-$this->getDiscount();}//public function getSummaryLine(){$base= $this->title.'('.$this->proudcerMainName.$this->proudcerFirstName.')';return $base;}}/** * CD类 存放 播放时间 */class CDProudct extends shopProudct{private $playLength=0; //播放时间public function __construct($title, $firstName, $mainName, $price,$playLength){parent::__construct($title, $firstName, $mainName, $price);$this->playLength=$playLength;}//获取播放时间public function getPlayLength(){return $this->playLength;}//public function getSummaryLine(){$base=parent::getSummaryLine();$base.='播放时间:'.$this->playLength;return $base;}}$test=new CDProudct('计算机书', 'PHP面向对象', '深入', '100', '20:00');echo $test->getSummaryLine();
PS:系统的学习下面向对象,更好的记忆和达到一定重复率 这样熟记于心 可以更好的在设计模式中发挥所掌握的技术。
学习日记,也是为了做到重复率有效地记忆。
后面的章节会努力写的详细点。
- PHP面向对象学习一:对象基础实践
- PHP核心技术与最佳实践学习(一)面向对象
- php代码之面向对象基础一
- PHP面向对象基础笔记一
- PHP面向对象基础笔记一
- PHP面向对象基础
- php面向对象基础
- PHP面向对象基础
- php【基础学习十四】面向对象
- php学习日记1 ----面向对象基础
- php面向对象(一)
- PHP面向对象(一)
- 学习PHP面向对象(一)
- PHP面向对象开发的学习(一)
- 面向对象基础<一>
- 面向对象(基础一)
- javascript面向对象基础学习(一)
- C++之面向对象学习基础一
- AsyncTask 也会引起线程不安全(抛出异常:CalledFromWrongThreadException)?
- Mac计算机压缩的 ZIP 档案如何正确在 Windows下解压缩
- 行迁移和行链接
- struts2从零开始
- http://blog.chinaunix.net/uid-22342564-id-3053393.html
- PHP面向对象学习一:对象基础实践
- android4.0 statusbar加载icon
- 【java&JSP】中获取工程路径的各种方法
- 【Java】路径问题解决方案收集
- java中system.exit (0)与system.exit (1)以及return
- 【Strurs1】FormBean创建错误!
- CentOS6.3+JDK7+Tomcat7.0+MySQL5.5 开发环境的搭建
- 内存理解
- 内存理解2