面向对象知识总结

面向对象知识总结

--------php面向对象-----------------
oop 面向对象的编程
万物皆对象
对象有 属性和方法
具有相同属性和共同方法的一组对象叫做类
面向对象的编程
1.代码的封装性
2.重用性
3.代码的扩展性
4.代码的可维护性
5.具有共同属性和共同的方法的一组对象:类

类和对象
类是对象的抽象
对象是类的具体实现(实例)

代码实现面向对象的编程:
1、先定义类
class 类名{

//属性
public(访问修饰符) 属性名;
//方法
函数

}
 规范:类名使用帕斯卡命名法
       文件命名:类名+.class.php

2.通过类实例化对象
对象名 = new 类名();
访问属性
对象名->属性名=属性值
调用方法
对象名->方法()

构造函数
1.作用:初始化类的成员变量(属性)
2. 语法
public function __construct( n a m e , _name, name,_sex, a g e , _age, age,_hoddy)
{

 在类的内部来访问自身
    this代表当前对象
    $this->name=$_name;
    $this->sex=$_sex;
    $this->age=$_age;
    $this->hoddy=$_hoddy;

}
默认有一个无参的构造函数
实例化对象的时候都会自动调用构成函数

3.魔术方法

  1. 当访问的属性不存在,自动调用__get方法
public function __get($name){



}
2.赋值的时候属性不存在的时候
 public function __set($name, $value)
      {
          echo $name."真的不存在";
      }
 3.
  function __autoload($name){
      $file=$name.".class.php";
      require $file;
    }帮我们在使用类的时候自动加载

4.类当中的public (访问修饰符)
公共:在类的内部和外部都可以被访问到
作用:可以控制访问权限
public公共的-在类的内部和外部都可以被访问到
5.类当中的private(私有的)
私有:只能在类中被访问到
6.static 静态的-直接使用类名来访问 类名::属性或者方法
在类的内部访问静态成员 用self::
7. protected:受保护的 在类的内部和子类可以访问

---------------------------------------------------------继承--------------------------------------------------------------------------
8.
子类继承父类的非私有成员,实现代码的重用性,和扩展性
class 子类 extends 父类{

}

9.调用父类成员
parent::
10.
重写
子类定义和父类相同的成员,子类会覆盖父类的成员

12.继承的特性
单根性(一个子类只能继承一个父类)
传递性(c extends b b extends a)
-----------------------------------------------------面向对象的三大特性--------------------------------------------------------------------
1、封装 不关心内部的细节实现
2、继承 实现代码的重用和扩展,子类继承父类的非私有成员
3、多态
1.同一个类在不同的环境表现出不同的状态
2.不同的对象调用同一个方法表现不同的状态

---------------------------------------------------面向对象数据库查询------------------------------------------------------------------------
-------------------------------------------------面向对象抽象类----------------------------------------------------------------------------
public abstract function
父级有抽象方法子级一定要实现,或者子级都使用一个共同的方法。但用法不同
抽象类只能被实现,不能被实例化(不能被new),不能创建对象
只能被子类继承
抽象方法没有具体实现,由子类去实现,子类必须实现
抽象方法必须定义在抽象类中
什么情况下定义抽象方法
子类都具有的共同方法,但是每个子类的具体实现不同
抽象类不一定有抽象方法
子类必须要实现抽象类的抽象方法,除非子类也是抽象类
抽象类抽象方法可以使不同的对象具有相同的方法 但方法表现出来的行为不统一
抽象类抽象方法可以实现多态
$COM=new 类名;
当 构造函数无参的时候,小括号可以省略
类名和方法名不区分大小写
-------------------------------------------接口---------------------------------------------------------------------------------------------
接口: 是对继承单根性的扩展
约束子类的行为
子类只能继承一个父类但可以继承多个接口
接口语法:interface I(以大写的I开头)接口名
{
可以定义常量 define(“PI”)
常量还有一种常量方法 const PI

  function 函数名();

}
接口可以定义常量和函数,但都不能有具体的实现
而且不能写访问修饰符,因为接口中的成员都是隐式公开(public)

class 子类 extends 父类 impements 接口1,接口2…
{

}

__call() 当调用的方法不存在时,自动调用__call方法

final 最终的 不能被继承,子类不能重写


DBhelper

1、建立数据库的链接
2、增删改查
2.1 select * / 列名 from 表名
inner join表名 on 链接条件
where 查询条件
order by 列名

      $fileds 字段(列名)
      $tablename 表名
      $join 连接的表名和链接条件
      $where 查询条件
      $orderby 排序的列名  asc/desc
      $limit 开始,行数 

2.2     delete from where 删除条件
2.3     update 表名set 列名 

        public function setfileds($arr){
    foreach ($arr as $k=>$v){
        $this->filedlist.="$k='$v',";
    }
    $this->filedlist=substr($this->filedlist,0,strlen($this->filedlist)-1);
}


spl_autoload_register  当类找不到 自动加载类所在文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值