zoukankan      html  css  js  c++  java
  • 2016年12-12 面向对象子类和多态

    //2.继承
    //1.父类
    //2.子类
    //子类可以继承父类的一切
    //重写:override
    //特点:单继承,一个子类只能有一个父类,一个父类可以派生多个子类


    /*class Ren
    {
    public $name;

    function Say()
    {
    echo $this->name."正在讲话";
    }
    }

    class China extends Ren
    {
    //子类对父类的方法进行重写
    function Say()
    {
    parent::Say();
    echo "你好";
    }

    function Run()
    {
    echo $this->name."正在跑步";
    }
    }

    class America extends Ren
    {
    //子类对父类的方法进行重写
    function Say()
    {
    echo "hello";
    }
    }*/

    /*$c = new China();
    $c->Say();
    $a = new America();
    $a->Say();
    var_dump($c);
    */

    //overload 重载
    //可以使类里面的某个方法产生多种效果,根据传入的参数不同,可以执行不同的逻辑
    //也是多态的一种,编译多态
    /* class Test
    {
    public string show()
    {
    return "0参";
    }
    public string show(string s)
    {
    return "1参";
    }
    public string show(string s,string a)
    {
    return "2参";
    }
    }

    Test t = new Test();

    t.show("a","b");
    */

    //3.多态
    //当父类引用指向子类实例的时候,由于子类对父类的方法进行了重写,父类引用在调用该方法的时候表现出的不同,称为多态
    //运行多态

    //条件
    //1.要有继承
    //2.父类引用指向子类实例
    //3.要有重写
    //4.调重写的方法

    //父类
    /* class Ren
    {
    public virtual string Say()
    {
    return "说话";
    }
    }

    //子类
    class China : Ren
    {
    public override string Say()
    {
    return "你好";
    }
    }
    //子类
    class America : Ren
    {
    public override string Say()
    {
    return "hello";
    }
    }

    //父类引用r指向子类实例
    Ren r = new America();
    MessageBox.Show(r.Say());

    r = new China();
    MessageBox.Show(r.Say());


    //子类的对象可以代替父类的对象
    America a = new America();
    MessageBox.Show(Eat(a));
    //怪兽吃人,需要一个人的参数
    public string Eat(Ren r)
    {
    return "这个人味道不错!";
    }
    */

  • 相关阅读:
    iOS 谁说程序猿不懂浪漫之 爱心
    iOS 星星评价视图 3行搞定
    iOS 柱状图的定制
    iOS 跑马灯 一句话集成
    代理的使用
    发送的网络请求中含有中文 转码的实现
    杂记
    使用纯代码实现UICollectionView(UITableView)需要注册
    NSASSert的使用
    iOS进阶第三节 数据处理之CoreData
  • 原文地址:https://www.cnblogs.com/F4natasy/p/6164766.html
Copyright © 2011-2022 走看看