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();

    加入了权限的控制

  • 相关阅读:
    使用 Hudson 进行持续集成
    hudson中的ftp插件
    Tomcat i18n 对 URL 进行 UTF8 解码
    Product deploy using NAnt and NSIS [技术点滴]
    切身体会到对微软的无语——关于VS2008的配置项
    How to create your own home SVN repository with Xampp/Apache
    CVS+VS2003+SetupFactory建设每日构建(Daily build)
    期待 JDK、Tomcat和MySQL的绿色安装方法
    FolderBrowserDialog 使用时路径问题
    无敌删除命令
  • 原文地址:https://www.cnblogs.com/haidong/p/4365409.html
Copyright © 2011-2022 走看看