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

    面向对象面向过程

    对象:一切皆是对象,由类实例化出来的。

    类:由众多对象抽象出来的。

    定义类        
    class Hero{
        成员变量(一般是定性的值)
        public $name;
        private $blood;   //私有成员  
        protected           //受保护的
        public              //公有的
        成员属性(php里面不存在)
        成员方法&&函数(第一个首字母大写。如果两个单词构成,第一个字母小写,后面的单词首字母大写,驼峰法命名)
        function Run(){
            echo $this->name."跑";    
        }
    }

    类里面的成员是属于对象的,this关键字代表该对象,谁过来调用方法,该对象就代表谁。例如在此处代表$sk

    使用类:实例化。

    $sk = new Hero();
    $sk->name = "沙王";
    echo $sk->name;
    $sk->Run();

    访问修饰符
    private  私有的  加之前要把var去掉     只能在该类里面访问
    protected    受保护的    在该类里面可以访问    在该类的子类里面也可以访问
    public  公有的,在任何地方都可以访问

    class Hero{
        public $name;
        public $blood;
        public $sex;
        
        public function __construct($s){
            $this->sex = $s;
        }
        public function __destruct(){
            echo "析构函数";
        }
    }
    $h = new Hero("田力");
    echo $h->sex;

    构造函数
    特点:写法特殊(类名必须保持一致),执行时间特殊(造对象的时候就会执行)
    作用:对类里面的某些成员进行初始化
    爽下划线打头的方法称作魔术方法

    面向对象

    面向对象的三大特性
    封装    继承        
    多态

    封装

    class Ren{
        public $name;
        private $age;

        给变量赋值的魔术方法
        public function __set($n,$v){
            $this->$n = $v;
        }

       取变量值的魔术方法
        public function __get($n){
            return $this->$n;
        }

    }
    $r = new Ren();

    $r->name = "诸葛亮";
    echo $r->name;

    1。将成员变量变为私有
    2。做一个函数来间接操作
    3。在该方法里面加限制条件
    目的:为了使类更安全

  • 相关阅读:
    常用SEO优化工具
    OA系统中常用信息提示窗体
    VB.NET 操作注册表
    js截取字符串处理
    JavaScript中常用的对象和属性
    优化ASP.NET性能
    jquery线上引用无需本地包 Jim
    css 超出盒子滚动,不显示滚动条 Jim
    常用判断js数据类型 Jim
    amonthpicker 禁止当前完后月份,禁止当前往前推2月份 Jim
  • 原文地址:https://www.cnblogs.com/sunzhenkun/p/7426412.html
Copyright © 2011-2022 走看看