zoukankan      html  css  js  c++  java
  • 面向对象特性之继承、多态

    继承特点:

    子类继承父类的一切

    单继承,即子类只能继承一个父类。

    实例:

    class ren
    {
        public $name;
        public $sex;
        public $age;
        function __construct($a)
        {
            $this->name=$a;
        }
        
        function say()
        {
            echo $this->name."正在讲话";
        } 
    }
    class american extends ren
    {    public $ziben;
        function say()//对父类方法进行重写
        {
            parent::say();//调用父类的方法
            echo "就喝喝酒";
            }
        }
    class china extends ren
    {    public $shehui;
        function say()
        {    
            parent::say();
            echo "经济技术";
            }
    }
    
    $r=new american("胡");
    var_dump($r);
    $r->say();
    $r->ziben="资本主义";
    echo $r->ziben;
    
    $r=new china("");
    var_dump($r);
    $r->say();
    $r->shehui="社会主义";
    echo $r->shehui;

    多态:当父类的引用指向子类实例的时候,由于子类对父类的方法进行了重写,父类引用在调用相应的方法的时候表现出来的不同。

    条件:

    1、必须有继承

    2、子类必须对父类进行重写

    3、父类引用指向子类实例

    $r=new american();
    $r->say();
    $r=new china();
    $r->say();
    //同一个方法显示出不同的结果
  • 相关阅读:
    通俗版说委托
    C#读取配置文件的几种方式
    C#异步了解一下
    C#3DES加密了解一下
    说说泛型
    工厂和抽象工厂
    装饰者模式(Decorator pattern)
    观察者模式(Observer pattern)
    策略模式(Stategy Pattern)
    C#读取Appconfig中自定义的节点
  • 原文地址:https://www.cnblogs.com/jinshui/p/5565865.html
Copyright © 2011-2022 走看看