PHP面向对象

面向对象

万物皆对象
对象有 属性和方法
具有相同属性和共同方法的一组对象叫做类
面向对象的编程
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代表当前对象
t h i s − > n a m e = this->name= this>name=_name;
t h i s − > s e x = this->sex= this>sex=_sex;
t h i s − > a g e = this->age= this>age=_age;
t h i s − > h o d d y = this->hoddy= this>hoddy=_hoddy;

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

  1. 当访问的属性不存在,自动调用__get方法

public function __get($name){

}
2.赋值的时候属性不存在的时候
public function __set($name, $value)
{
echo KaTeX parse error: Expected 'EOF', got '}' at position 25: …存在"; }̲ 3. …name){
f i l e = file= file=name.".class.php";
require $file;
}帮我们在使用类的时候自动加载

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

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

}
9.调用父类成员
parent::
10.
重写
子类定义和父类相同的成员,子类会覆盖父类的成员
11.继承的特性
单根性(一个子类只能继承一个父类)
传递性(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 列名

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值