zoukankan      html  css  js  c++  java
  • 跟着百度学PHP[4]OOP面对对象编程-6-封装性private

    所谓封装顾名思义,如同箱子般给封装起来。结合前面的来说就是对属性或者方法,封装后的方法或属性只能有类内部进行调用。外部调用不了。

    封装性的好处:

    1.信息隐藏

    2.http://www.cnblogs.com/yisss/p/3412702.html

    3.https://zhidao.baidu.com/question/2203595698703331308.html

    目录-------------------------------------

    00X1 进行封装

    00x2 如何调用封装的属性或者方法

    -----------------------------------------

    00X1 对属性或方法进行封装

    可以用修饰符private

    <?php 
    /**
    * 
    */
    class Student
    {
        private $name;             //封装了$name属性,方法也是如此。
        
        function __construct(argument)
        {
            # code...
        }
    private  function say() //对say这个方法进行封装。
      {
        echo "hello world";
      } }
    ?>

    00X2 如何调用封装的方法或属性

    之前说到的,调用是使用“$this” 对于被封装的的外部直接进行调用肯定是不行的。

    我的理解是,外部要调用内部被封装的只有间接调用可以顺利调用被封装了的属性或方法,换一种说法就是:只有类本身可以调用被封装的方法或者属性!(使用$this)

    比如下面的第一个案例,对三个属性都进行了封装,然后初始化后对其进行了调用。

    <?php
    class Person
    {
        private $name;        //对属性进行了封装,但是稍后的构造方法(__construct)对其进行了初始化,然后对这个属性进行了间接调用。故可以成功被调用。
        private $sex; 
        private $age;
        function __construct($name, $sex, $age)
        {
            $this->name = $name;
            $this->sex = $sex;
            $this->age = $age;
        }
        function say()
        {
            echo "我的名子叫:" . $this->name . " 性别:" . $this->sex . " 我的年龄是:" . $this->age."<br />";
        }
    }
    
    $p1 = new Person("张三", "", 20);
    $p2 = new Person("李四", "", 30);
    $p3 = new Person("王五", "", 40);
    $p1->say();
    $p2->say();
    $p3->say();
    ?>

    THE END


  • 相关阅读:
    python学习笔记day08 文件功能详解
    python学习笔记day08 文件操作
    python学习笔记day07 小结
    python学习笔记day07 集合
    python学习笔记day06 购物车实现
    python学习笔记 day06 小知识点总结
    python学习笔记day01_03python 发展历史
    python学习笔记 day06
    python学习笔记 day05 习题讲解
    PAT L2-002 链表去重
  • 原文地址:https://www.cnblogs.com/xishaonian/p/6146207.html
Copyright © 2011-2022 走看看