zoukankan      html  css  js  c++  java
  • 面向对象2

    面向对象与面向过程的区别


    1面向过程:就是将一份工作给一个人,让他自己去分成几个步骤去完成。
    2面向对象:就是将一份工作交给许多人,每个人去完成一个小任务,最后将许多小任务汇总起来。


    面向对象的基本概念:


    类和对象:


    类:举例==》人就是一个类,班级也可以说是一个类,类是有许多对象组成的一个集合。
    通常,类一般包含两大方面的信息{1:属性;2:方法}

    对象:人这个类中具体到哪一个人,这个具体的人就是一个对象。

    //定义一个类
    class renlei{
    //类中有一些属性(就是变量)
    var $name = "向兆泽";
    var $sex = "男";
    var $age = 18;
    //类中有一些方法(就是函数)
    function a1(){
    echo "1234";
    }
    }

    面向对象的语法:
    1、定义类:在定义类的语法中只有下面的三种代码;
    (1)、定义属性(变量);
    (2)、定义方法(函数);
    (3)、定义常量(类常量);
    2、创建类的对象:
    1、$对象名 = new 类名();
    2、可变类名
    $变量名1 = “类名”;
    $对象名 = new 变量名1();
    3对象名 = new self;
    “self”只能在类的内部使用,它值得是这个类的本身
    4、通过对象创建对象
    $对象名1 = new 类名();
    $对象名2 = new 对象名1;


    5、使用对象(3个方法)
    (1)使用属性
    (2)使用方法
    (3)使用常量

    类中成员:(属性、方法、类常量)

    在类中的属性一般分为一般属性和静态属性,同样方法也可分为一般方法和静态方法

    一般属性:
    属性就是放在一个类里面的变量
    定义形式:
    形式1:var $v1; //定义但不赋值
    形式2:var $v1 = 2; //在定义的同时给他赋值,需要注意的是,给他赋的值只能是一
    直接的值或者是一个常量,不能是一个变量,也不能是一个式子
    形式3:public $v1;//跟形式一其实是一样的 var 可以用 public代替
    形式4:public $v1 = 2;//同上
    使用形式:
    $对象->属性名; 在这里的属性名前面不加$符号。
    一般方法:
    定义 :跟定义函数几乎相同:function 方法名(里面可以放参数){


    调用:$对象名->方法名(可以加参数);//方法的前面可以加修饰词,一般都用public,这样zhi公共的都可以使用


    $this关键字:
    $this是一个“伪对象”,它代表当前所属类的当前对象。


    静态属性:
    在定义属性时,在前面加上关键字“static”,此时这个属性就是一个静态属性。
    形式:static $v1 = “属性值”;
    静态属性只是属于类的,而不是属于对象的。

    静态属性的调用:静态属性调用时要用双冒号“::”
    形式:类::$静态属性名;
    静态方法:
    跟静态属性相同,在方法的前面加上关键字static这个方法就是一个静态方法
    形式:类::静态方法名();

    需要注意的是$this在静态方法中是不能使用的,在静态方法中也不能调用非静态的方法

    self:代表当前类:
    同样的在方法里输出 return new self;
    在调用这个方法的时候,就能得到一个对象;这个类的对象


    构造方法:
    构造方法的方法名是固定的,只能是 __construct();
    构造方法只能是一般方法,不能是静态方法
    构造方法在实例化一个对象的的时候就已经存在,只是默认的不显示而已
    该方法中使用$this来对属性赋值

    析构方法:
    在PHP文件执行完毕后销毁对象,默认不写;就是销毁对象,
    用unset() 也可以销毁对象

  • 相关阅读:
    React组件生命周期-正确执行运行阶段的函数
    React组件生命周期-正确执行初始化阶段的函数
    React组件生命周期-初始化阶段的函数执行顺序
    React-非dom属性-key
    React-非dom属性-ref标签
    React-非dom属性-dangerouslySetInnerHTML标签
    React 万能的函数表达式
    通过表达式、函数给React组件属性赋值
    hdu 2072 单词数
    codeVS 4189 字典
  • 原文地址:https://www.cnblogs.com/LQK157/p/9137879.html
Copyright © 2011-2022 走看看