zoukankan      html  css  js  c++  java
  • page39 类的访问权限控制

    <?php
    /**
     * Page37 Class
     * @authors haidong (admin@zhe700.net)
     * @date    2015-03-25 11:21:21
     * @version $Id$
     */
    
    class ShopProduct{
        private $title;
        private $producerMainName;
        private $producerFirstName;
        protected $price;
        private $discount = 0;
        public function __construct($title,$producerMainName,$producerFirstName,$price){
            $this->title = $title;
            $this->producerMainName = $producerMainName;
            $this->producerFirstName = $producerFirstName;
            $this->price = $price;
        }
        public function getProducerMainName(){
            return $this->producerMainName;
        }
        public function getProducerFirstName(){
            return $this->producerFirstName;
        }
        public function getDiscount(){
            return $this->discount;
        }
        public function serDiscount($discount){
            return $this->discount = $discount;
        }
        public function getPrice(){
            return ($this->price - $this->discount);
        }
        public function getProducer(){
            return "{$this->producerFirstName} {$this->producerMainName}";
        }
        public function getSummaryLine(){
            return "{$this->title} ({$this->producerFirstName} {$this->producerMainName})";
        }
    }
    class CdProduct extends ShopProduct{
        private $playLength;
        public function __construct($title,$producerMainName,$producerMainName,$price,$playLength){
            parent::__construct($title,$producerMainName,$producerMainName,$price);
            $this->playLength = $playLength;
        }
        public function getPlayLength(){
            return $this->playLength;
        }
        public function getSummaryLine(){
            $base = parent::getSummaryLine();
            $base .= "play time ({$this->playLength})";
            return $base;
        }
    }
    class BookProduct extends ShopProduct{
        private $numPages;
        public function __construct($title,$producerMainName,$producerMainName,$price,$numPages){
            parent::__construct($title,$producerMainName,$producerMainName,$price);
            $this->numPages = $numPages;
        }
        public function getNumPages(){
            return $this->numPages;
        }
        public function getSummaryLine(){
            $base = parent::getSummaryLine();
            $base .= "total pages ({$this->numPages})";
            return $base;
        }
    }
    $cd = new CdProduct('CD','John','Smith',79,90);
    echo $cd->getSummaryLine();
    $book = new BookProduct('Book','Bob','zhang',49,360);
    echo $book->getSummaryLine();

    加入了权限的控制

  • 相关阅读:
    HDU 4972 A simple dynamic programming problem
    dd usb 启动盘制作 成功版本
    1233
    openstack kvm 虚拟机磁盘差异衍生
    怎样安装g++/gdb
    区间最小值 线段树 (2015年 JXNU_ACS 算法组暑假第一次周赛)
    hdu
    TCP/IP解析(一):TCP/IP的工作方式
    使用Python生成源文件的两种方法
    zoj1003 Crashing Balloon
  • 原文地址:https://www.cnblogs.com/haidong/p/4365409.html
Copyright © 2011-2022 走看看