美文网首页面试复习
php基础知识回顾-2

php基础知识回顾-2

作者: 云三木 | 来源:发表于2020-05-11 14:20 被阅读0次

1.面向对象

面向对象的组成
    类  : 定义了一件事物的抽象特点。类的定义包含了数据的形式以及对数据的操作。
    对象: 是类的实例。

    类 就是 对象的抽象化,对象 就是 类的实例化

类的格式
class 类名
{
    //修饰符 public、protected、private
    修饰符 属性  (我有什么)
    方法  (我会什么,  函数  功能) 
}

属性格式:
    修饰符     属性名
    修饰符     属性名 = 值

方法格式:
    修饰符 function 方法名( 参数1, 参数2, ...){
        方法体
    }

对象 (如何使用类)
    $对象名 = new 类名
    $对象名 = new 类名()

在类外使用属性
    $对象名->属性名    (属性名不要加$)

在类外使用方法
    $对象名->方法名()   (方法名后面的小括号不要丢掉)

如何控制内部与外部之间的联系?    修饰符
                               类外    本类     继承类
public      公共的 (国名儿子)    √       √        √
private     私有的 (私生子)      x       √        x
protected   受保护的(亲儿子)     x       √        √

修饰符 优先级
    继承重写时, 修饰符要么保持等级, 要么降低等级.
    private > protected > public 
======================================================
例:

class cc
{
    // 属性
    public $name = '哈奇士';
    public $age = 18;
        static $a = 11;
    // 方法
    public function skill1()
    {
        echo '沙发'.self::$a;
        retrun $this; // 通过伪对象 $this调用本类中的属性和方法
    }
    public function skill2()
    {
        echo '衣柜';
    }
}
$a = new cc;
// var_dump($a);
echo $a->name.'<br>';
$x = 'name';
echo $a->$x;
echo '<hr>';
$d = $a->skill1();
// var_dump($d);
$a->skill2();

2.对象特点

面向对象主要有三大特性:封装、继承、多态

面向对象特性: 封装性、继承性、多态性。
  a). 封装性
    高内聚, 低耦合

  b). 继承性
    class 儿子 extends 老子{}
    * 可以继承属性/ 方法
    * 可以重写属性/ 方法3
    * 支持单继承, 不支持多继承
    * 支持连续继承 
  c). 多态性
    PHP不支持重载实现多态,(重载:当子类跟父类有个相同的方法时,子类的方法会覆盖父类的方法。)但是PHP可以变向的实现多态效果。
        Ⅰ. 继承
        Ⅱ. 重写
        Ⅲ.父类引用指向子类对象
    多态的优点
        1. 消除类型之间的耦合关系
        2. 可替换性
        3. 可扩充性
        4. 接口性
        5. 灵活性
        6. 简化性

3.其他

1. 常量
    格式: const 常量名 = 常量值
    使用: 类名::常量名

    * 不属于对象, 属于类, 不需要实例化
    * 不需要修饰符
    * 不能重复
    * 可以继承, 可以重写, 继承后, 可以重写一次
    * 常量名 区分大小写, 推荐大写

2. 静态
    格式:
        修饰符 static 属性名/方法名
        static 修饰符 属性名/方法名

    使用:
        类内: self::属性名/方法名()
        类外: 类名::属性名/方法名()

    * 静态属于类, 不属于对象
    * 静态可以定义属性 和 方法
    * 在静态方法内, 只能访问静态属性/方法
    * 静态属性/方法 可以继承

3. 最终类 final 
    格式:
        final class 类名
        final 修饰符 function 方法名

    * final可以定义类/ 方法, 不能定义属性
    * final类, 不能被继承
    * final方法, 不能被重写
    * final用户类的结构

4. instanceof
    格式: 对象名 instanceof 对象名
    格式: 对象名 instanceof 类名

    * 判断 对象是否属于对象名
    * 判断 对象是否从类名 实例化过来的

相关文章

  • php基础知识回顾-2

    1.面向对象 2.对象特点 3.其他

  • php基础知识回顾-1

    1.变量作用域 php变量有四种作用域:局部作用域、全局作用域,静态作用域、参数作用域 在局部调用全局变量需要使用...

  • 前言

    第一篇:基础知识 基础知识篇通过PHP入门搭建PHP的开发环境。php语言基础、流程控制语句、表达式、php函数、...

  • PHP学习资料

    基础知识:http://www.runoob.com/php/php-tutorial.htmlSublime工具...

  • php - 基础知识2

    1. 字符串运算 字符串运算符只有 .(点) 。它将两个字符串连接起来,如: $n = "3.1415926r*...

  • PHP全栈学习笔记18

    php基础知识,JavaScript,jQuery,ajax基础知识 linux基础知识,mysql数据库的基础与...

  • PHP全栈学习笔记18

    php基础知识,JavaScript,jQuery,ajax基础知识 linux基础知识,mysql数据库的基础与...

  • 01_PHP 基础知识

    1. PHP 基础知识 1. PHP 基础知识[#1-php-%E5%9F%BA%E7%A1%80%E7%9F%A...

  • php基础知识入门

    PHP基础知识点整理 • 缩写:Personal Home Page ==>>PHP:HypeText Pre...

  • PHP面试知识脉络(更新中)

    PHP基础知识Javascript、jQuery、ajax基础知识Linux基础知识MySQL数据库的基础与优化程...

网友评论

    本文标题:php基础知识回顾-2

    本文链接:https://www.haomeiwen.com/subject/msoynctx.html