PHP中关于类的基本内容练习:

<?php
    class SportObject{

        public $name;
        public $height;
        public $avirdupois;

        public function __construct($name, $height,$avirdupois) {
            $this->name = $name;
            $this->height = $height;
            $this->avirdupois = $avirdupois;
        }

        function beatBasketball() {

            if ($this->height > 180 and $this->avoirdupois <= 100) {
                return $this->name.", 符合打篮球的要求。";
            } else {
                return $this->name.", 不符合打篮球的要求。";
            }
        }
        function showMe(){
            echo '这句话不会显示。';
        }
        function __destruct() {
            echo "<p><b>对象被销毁,调用析构函数。</b></p>";
        }
    }

    class BeatBasketBall extends SportObject{
        public $age;

        function __construct($name, $height, $age) {
            $this->name = $name;
            $this->height = $height;
            $this->age = $age;
        }
        function showMe() {
            if ($this->age > 18) {
                return $this->name.",符合打篮球的要求.";
            } else {
                return $this->name.",不符合打篮球的要求.";
            }
        }
    }

    class WeightLifting extends SportObject {
        function showMe() {
            if ( $this->avoirdupois < 85) {
                return $this->name.",符合举重.";
            } else {
                return $this->name.",不符合举重.";
            }
        }
    }

    $sport1 = new SportObject('流星', '185', '80');
    echo $sport1->beatBasketball();
    echo "<br>";
    $sport2 = new SportObject('天飞', '185', '80');
    echo $sport2->beatBasketball();
    echo "<br>";
    $Basketball = new BeatBasketBall('明日','190', '68');
    $weightlifting = new WeightLifting('科技', '185', '80', '20','男');
    echo "<br>";
    echo $Basketball->showMe();
    echo "<br>";
    echo $weightlifting->showMe();
    echo "<br>";

    class BookObject{
        const BOOT_TYPE = '计算机图书';
        public $object_name;

        function setObjectName($name) {
            $this->object_name = $name;
        }
        function getObjectName(){
            return $this->object_name;
        }
    }
    $c_book = new BookObject();
    $c_book->setObjectName("PHP类");
    #echo BookObject::BOOK_TYPE."->";
    echo $c_book->getObjectName();

    class C {
        function __call($name, $num) {
            echo "方法名称: ".$name."<p></p>";
            echo "参数存在的个数: ".count($num)."<p></p>";
            if (count($num) == 1) {
                echo $this->list1($a);
            }
            if (count($num) == 2) {
                echo $this->list2($a, $b);
            }
        }
        public function list1($a) {
            return "this is function list1";
        }
        public function list2($a, $b) {
            return "this is function list2";
        }
    }
    echo "<br>";
    $a = new C;
    $a->listshow(1, 2);
    echo "<br>";
    $b = new C;
    $b->listshow(1);

?>

这样就算会了PHP么?-11的更多相关文章

  1. 地区sql

    /*Navicat MySQL Data Transfer Source Server : localhostSource Server Version : 50136Source Host : lo ...

  2. 11.Object方法

    综述 Object是Java中所有类的父类,对它的学习十分的重要, Object的函数除了final方法,基本上都是被设计为要被覆盖的(Override),这节我们就一起来学习这些函数. 1.equa ...

  3. Linux0.11内核--内存管理之1.初始化

    [版权所有,转载请注明出处.出处:http://www.cnblogs.com/joey-hua/p/5597705.html ] Linux内核因为使用了内存分页机制,所以相对来说好理解些.因为内存 ...

  4. Ubuntu下用wireshark抓取802.11封包并进行过滤分析

    要用wireshark抓802.11的包 需要在linux下进行. 要在linux下抓802.11的包 需要在linux下安装无线网卡驱动. 所以 在正式抓取之前先把这两样东西搞起来. *没有特殊说明 ...

  5. C++11特性:auto关键字

    前言 本文的内容已经不新鲜了.关于auto,翻来覆去被人知道的都是这些东西,本文并没有提出新颖的auto用法. 本人原是痛恨博客一篇篇都是copy而来缺乏新意的探索,当然,本文不是copy而来,但发布 ...

  6. {转自MC}NVIDIA DirectX 11演示DEMO详解

    http://tieba.baidu.com/p/1960826986 图形技术无论如何发展,最终都要落到实际的应用中才有效果.在个人电脑上,图形技术最大的用户除了显示UI和操作界面外,就是呈现美轮美 ...

  7. Linux就这个范儿 第11章 独霸网络的蜘蛛神功

    Linux就这个范儿 第11章  独霸网络的蜘蛛神功  第11章 应用层 (Application):网络服务与最终用户的一个接口.协议有:HTTP FTP TFTP SMTP SNMP DNS表示层 ...

  8. 越狱Season 1-Episode 11: And Then There Were 7-M

    Season 1, Episode 11: And Then There Were 7-M -Michael: That one 那个 -businessman: Nice choice choice ...

  9. 802.11 wireless 二

    802.11 wireless 2wireless spectrum(无线频谱)1.无线网络使用RF(射频)信号2.无线电也是电磁波3.频谱基于波长被划分,归为多个类型4.无线网络被归为微波段(mic ...

随机推荐

  1. jQuery的animate方法在IE8下出现小问题

    今天修改网站的bug,把网页显示的几张图片给做成左右滑动的动画效果: 由于本身有一个demo可供参考,然后在此基础上进行修改,所以很快就搞定了,然后在chrome,firefox,IE9下分别进行测试 ...

  2. C++基础回顾1(数据类型, 控制语句, 数组)

    最近两天打开本科学校的C++教材,快速回顾了一下C++方面的内容.虽然书本内容比较基础,但是还是有些知识点值得自己强化记忆.分几篇文章,加上自己的理解记录如下. 先回顾面向过程的部分. C++数据类型 ...

  3. Trie树(字典树) 最热门的前N个搜索关键词

    方法介绍 1.1.什么是Trie树 Trie树,即字典树,又称单词查找树或键树,是一种树形结构.典型应用是用于统计和排序大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计.它的优 ...

  4. Mysql 时间操作

    Mysql 时间操作(当天,昨天,7天,30天,半年,全年,季度) 1 . 查看当天日期 select current_date(); 2. 查看当天时间 select current_time(); ...

  5. JSF标签大全详解

    1. JSF入门 藉由以下的几个主题,可以大致了解JSF的轮廓与特性,我们来看看网页设计人员与应用程序设计人员各负责什么. 1.1简介JSF Web应用程序的开发与传统的单机程序开发在本质上存在着太多 ...

  6. THINKPHP之控制器

    如何新增控制器? 在Lib/Action中新增一个控制器:ProductAction.class.php: <?php class ProductAction extends Action{   ...

  7. [RxJS] Adding Conditional Logic with Filter

    Often you only want values to proceed through your stream if they meet certain criteria, just as if ...

  8. Linux环境下Eclipse + Tomcat + MySQL 配置J2EE开发环境的方法

    1. 版本号信息 (1)CentOS 6.4发行版64位,uname -a 显演示样例如以下: Linux localhost.localdomain 3.11.6 #1 SMP Sat Nov 2 ...

  9. JavaScript 字符串函数 之查找字符方法(一)

    1.JavaScript查找字符方法   首先看一张 有关字符串函数的查找字符的方法图 接下里补充里面的方法说明 2.charAt()     charAt() 方法返回字符串中指定位置的字符 语法 ...

  10. Angular单页应用&AngularJS内部实现原理

    回顾 自定义指令 登录后获取登录信息session 首先在登录验证的时候保存一个user 在学生管理页面中运用ajax调用获取到登录的用户信息 对注销按钮添加点击事件:调用ajax在表现层给user赋 ...