• DAY18


    第 一 章 类与对象

    1.1 学习技术的套路


    1.2 看一个实际的需求

    l 使用现有的技术来解决

     

    l 使用面向对象的方式来解决

    • 代码来一个快速入门的案例

    • 说明

    (1) class 是一个关键字,表示这是一个类,不能修改

    (2) public $name , 是一个成员属性, 当我们类定义的{} 中定义的变量,就是一个成员属性

    (3) public 是访问修饰符, 他是用于控制成员属性(变量)的访问范围的, 除了public还有两个,protected private ,后面我们会详细介绍

    (4) $cat1 = new Cat , 这个叫实例化一个对象, $cat1 就是一个对象, new 是一个关键字,表示新创建一个对象

    (5) $cat1->name = '小白'; 表示给成员属性赋值,-> 符号叫做对象运算符

    (6) 当我们需要看一个对象的情况时,我们可以通过 var_dump 来输出该对象


     

    1.3 php支持面向对象

    职业规划:

    PHP + 前端技术 ===> 全栈工程师

    架构师

    python(对项目架构和运维[负载,读写分离,优化等等 ,大流量,大并发,大数据]) + linux(centos/ubuntu) + unix(freebsd, solars) + 算法

    cto => 首先技术官

    ceo => 首先执行官

     


     1.4 类与对象的关系

    l 介绍

    在面向对象编程中,最重要的概念就是 和对象,因此我们必须将他们的关系和区别搞清楚

    举例说明:

     

    说明: 从上面的代码我们可以看出

    (1) 一个类可以创建多个对象

    (2) 不同的对象的标识符#编码,是不一样的,有系统在创建对象时分配的标识符,按编号的顺序分配


    1.5 如果理解类与对象

     


    1.6 类的定义

    class  类名{

      访问修饰符 成员属性1;

         访问修饰符 成员属性2;

    //.....

    }


    1.7 成员属性

    l 文档说明

      类的变量成员叫做属性,或者叫字段特征,在本文档统一称为属性。属性声明是由关键字 publicprotected 或者 private 开头,然后跟一个普通的变量声明来组成。属性中的变量可以初始化,但是初始化的值必须是常数,这里的常数是指 PHP

      

    本在编译阶段时就可以得到其值,而不依赖于运行时的信息才能求值。

      l 通俗说明:

     成员属性是类的一个组成部分,一般是基本数据类型(整数,字符串等),

     也可是复合类型(对象、数组) 资源类型。比如我们前面定义猫类的

     public $age 就是成员属性。

      l 代码举例说明


    1.8 创建对象的说明

     

    说明

    (1) 在使用默认构造方法时,创建对象的

      $对象名  =  new 类名()

      $对象名  =  new 类名

      等价

      举例

     

    (2) 如何访问成员属性

     

    (3) 类名的规范说明

    类名不区分大小写.

    类名命名规范

    关于函数,变量,常量,接口等等的命名规范,请参考手册.


    1.9 对象传递方式(重点, 难点)

    l 先请大家看一段代码,从而引起思考

     

    注意当 对象传递方式是 $p1 = $p2 , 分析如上图

    注意当 对象传递方式是 $p1 = &$p2 , 分析如上图


     1.10 成员方法(函数)

    l 看一个需求

      当我们需要让对象完成某个任务(比如计算,比如上传下载文件,分页等等), 就需要在类中定义函数, 这时我们就将这样的函数称为 成员方法.

     

      代码走:

     

    原理分析图如下:

     

    l 成员方法的基本语法

      class  类名{

          成员属性;

      访问修饰符  function  成员方法1(形参){

            方法体;

          return 语句;//[是有程序员自己决定的,]

      }

      访问修饰符  function  成员方法1(形参){

            方法体;

        return 语句;//

      }

    }

    说明

    (1) 成员方法定义在类中.

    (2) 成员方法前面可以有访问修饰符,如果你不写,默认为public

    (3) 成员方法的运行原理和普通的函数是一样的.

     

    l 成员方法的小结

     

    l 类定义的进一步完善


    第二章 构造方法(函数)

    2.1 一个需求,引出构造函数

       什么是构造函数呢?在回答这个问题之前,我们来看一个需求:前面我们在创建人类的对象时,是先把一个对象创建好后,再给他的年龄和姓名属性赋值,如果现在我要求,在创建人类的对象时,就指定这个对象的年龄和姓名,该怎么做? 

    2.2 构造函数的基本介绍

     l 基本语法

      class  类名{

      //构造函数

      访问修饰符 function  __construct(形参列表){

      //可以对成员属性进行初始化.

        }

      }

     说明

    (1) 构造函数的访问修饰符可以是 public , protected, private , 一般情况下是public ,默认就是public

    (2) __construct 是关键字,不能修改, __ 是两个_ 下划线。

    (3) 构造函数没有返回值, 即没有return

    (4) 构造函数是系统调用的,程序员不能显示调用

    2.3 快速入门案例

    走代码:(基本的使用案例).构造函数并不起到创建对象的本身,只是去完成初始化,当创建的时候,已经被创建了的。

     

     

    2.4 构造函数的细节和注意事项

    构造函数没有返回值,即没有return, 就算写了也没有用处

    在创建一个类的新对象时,系统会自动的调用该类的构造方法完成对新对象的

    初始化

    构造函数的作用是完成对成员属性的初始化任务,而不是创建对象本身. 所以以后在oop编程中,需要对成员属性进行初始化,则将这段代码放在构造函数中即可

    在一个类中,构造函数有且只能有一个, 如果定义多个,就会报错.

     

    php4中,可以使用 类名作为构造函数,在php5中也支持

     

    构造函数:就是完成对属性的初始化!

    读写分离:mysql的时候,将读的操作和写的操作分开处理。在项目开发中,我们要注意几个地方:1、如果数据量过大,光靠数据分离是不管用的,还要用分表、分区进行辅助,有时候还会用到缓存。

     

    2.5 默认构造函数

     

  • 相关阅读:
    emacs 集成astyle
    git reflog
    rpm 打包的时候 不进行strip
    gmock
    如何对正在运行的进程,进行heap profile
    linux性能压测工具
    默认宏定义
    gdb fabs错误输出
    基于Clang的缓存型C++编译器Zapcc
    grep 多行 正则匹配
  • 原文地址:https://www.cnblogs.com/qianjilou/p/6371382.html
Copyright © 2020-2023  润新知