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

    面向对象三大特性

    封装
    目的:让类更加安全,不让外界直接访问类里面的成员变量
    做法:1.把成员变量做成私有的
    2.做一个方法来实现变量取值或赋值,在方法里面加限制条件

    使用类里面提供的魔术方法也可以实现对私有成员的操作
    __set()特点:会自动执行,把赋值语句中的变量名作为第一个参数,把变量值作为第二个参数调用__set方法
    __get()特点:会自动执行,把取值语句中的变量名作为参数调用__get方法


    继承
    多态

    <?php

    面向过程
    *$r = 5;
    $m = 3.14*$r*$r;*/

    类和对象
    对象:任何东西都可以称为对象,类实例化出来的东西
    类:对所有同类的对象抽象出来的东西

    Info: Code,Name,Sex,Nation,Birthday
    对象:一条具体的信息 p001 张三 男 汉族 1990-2-3

    定义类:
    class Ren
    {
    public $Name; //成员变量
    protected $age;
    private $height;
    var $sex; //一般不要给成员变量赋值

    function __construct($s) //构造函数
    {
    $this->sex = $s;
    }

    function Run() //成员函数(方法)
    {
    echo "这个人正在奔跑!";
    }
    function Say()
    {
    echo $this->Name."正在说话!";
    }
    }

    使用类
    1.实例化对象
    $r = new Ren("男");
    2.给成员变量赋值(调用成员变量)
    $r->Name = '张三'; //给对象的Name赋值
    echo $r->age;

    var_dump($r);
    3.调用成员方法
    $r->Say(); //执行成员方法

    访问修饰符
    1.如果要加访问修饰符,需要去掉var
    2.三种:public公有的 protected受保护的 private私有的
    3.如果不加访问修饰符,默认是public

    $this引用
    $this代表该对象(哪个对象调用),不是代表该类

    构造函数
    1.写法特殊:__construct()
    2.执行特殊:在造对象的时候最先执行
    作用:对对象进行初始化操作


    ?>

  • 相关阅读:
    IcePatch2+IceGrid部署的解决方案
    设计模式——状态模式(State)
    设计模式——单例模式(Singleton)
    设计模式——工厂方法模式(Factory Method)
    FreeType编译
    OO Design之SOLID原则
    设计模式——策略模式(Strategy)
    C++之Name Hiding
    设计模式——抽象工厂模式(Abstract Factory)
    【转】FreeType介绍
  • 原文地址:https://www.cnblogs.com/kevin2016/p/5453309.html
Copyright © 2011-2022 走看看