蓝色云边

蓝色云边,追逐梦想

《深入PHP面向对象、模式与实践》学习笔记(一)

  • 1、类
  • 将具有相同属性和相同操作方法的对象抽象,用class关键字冠以名字,则形成了类.
  • 例如:
  • class ShopProduct{
  •         public $name;
  •         public $price;
  •         public $count;

  •   public function __construct($name,$price,$count){
  •       $this->name = $name;
  •       $this->price = $price;
  •       $this->count = $count;
  •      }

  •      public function GetName(){
  •          return $this->name;
  •       }
  •     
  • public function GetPrice(){
  •          return $this->price;
  •      }
  •     
  • public function GetCount(){
  •           return $this->count;
  •      }
  • }

  • 2、对象
  • 类的实例
  • 例如:
  • $product = new ShopProduct('Book','23.50',100);
  • 3、类的属性和方法
  • 4、数据类型
  • 基本数据类型:bool 、int 、double、string 
  • 特殊数据类型:array、function、object、NULL
  • 5、类型处理:类的类型提示
  • 强制指定类的属性参数必须为指定的类型
  • 例如:
  • public write(ShopProduct $product){
  • //code ...
  • }
  • public GetArray(array $productArr){
  • //参数$productArr 必须为数组类型
  • }
  • 类型检查:
  • is_bool($boolVar);
  • is_integer();
  • is_double();
  • is_string();
  • is_array();
  • is_object();
  • is_null();
  • is_resource();
  • 6、管理类的访问:public、private、pretected
  • public:公共的,任何地方都可访问,没用指明属性或者方法的访问属性或者用var关键字的都会默认设置或转换为public
  • private:私有的,只有在本类中才能够访问,子类和类外都不能访问
  • protected:受保护的,只能在本类和子类中被访问

  • 7、覆写
  • 子类重新实现父类的方法或功能
  • 要想调用被覆写的方法:parent::方法名();
  • 8、继承
  • 关键字:extends
  • 例如:class ShopProduct{}
  • class BookProduct extends ShopProduct{}
  • 从父类继承而来的有public和private 的属性和方法
  •     public write_book(){
  • $base="";
  • $base=ShopProduct::write();
  • $base.=$this->pagenums;
  • return true;
  • }
  • 9、子类中的构造函数定义
  • public __construct($name,$price,$count,$pageNums){
  • parent::__construct($name,price,$count);
  • $this->pageNums = $pageNums;
  • }

  • 10、子类的对象访问属性和方法机制
  • 在子类的对象访问或者调用方法时,首先会现在子类中去寻找指定的属性或者方法。如果子类中没有找到指定的属性或者方法,则会去该子类的父类中寻找。如果还是没有,则会继续去该父类的父类寻找,直到找到指定的属性或者方法或者到原始父类还没找到为止。





阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

《深入PHP面向对象、模式与实践》学习笔记(一)

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭