java基础之----多态

多态
对象的多态性:
class 动物
{}
class 猫 extends 动物
{}
class 狗 extends 动物

猫 x = new 猫();
动物 x = new 猫(); //一个对象,两种形态。
猫这类事物即具备猫的形态,又具备着动物的形态。这就是对象的多态性。
简单说,就是一个对象对应着不同的类型。
多态在代码中的体现:
父类或者接口的引用指向其子类的对象。
多态的好处:
提高了代码的扩展性,前期定义的代码可以使用后期的内容。
多态的敝端:
前期定义的内容不能使用(调用)后期子类的特色内容。

多态的前提:
必须有关系,继承,实现
要有覆盖。

package com.aoboco.com;

abstract class Animal
{
    abstract void eat();
}
class Dog extends Animal
{
    void eat()
    {
        System.out.println("啃骨头!");
    }
    void lookhome()
    {
        System.out.println("看门!");
    }
}
class Cat extends Animal
{
    void eat()
    {
        System.out.println("吃鱼!");
    }
    void catchMouse()
    {
        System.out.println("抓老鼠");
    }
}

class Pig extends Animal
{
    void eat()
    {
        System.out.println("饲料");
    }
    void gongDi()
    {
        System.out.println("拱地");
    }
}

public class DuoTaiDemo {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Cat c = new Cat();
        c.eat();
        c.catchMouse();

    }

}

未完待续

package com.aoboco.seven;

class MainBoard
{
    public void run()
    {
        System.out.println("maiboard run");
    }
    public void useNetCard(NetCard c)
    {
        c.open();
        c.close();
    }
}
class NetCard
{
    public void open()
    {
        System.out.println("netcard open");
    }
    public void close()
    {
        System.out.println("netcard close");
    }
}


public class DuoTaiDemo5 {

    public static void main(String[] args) {
        // TODO 自动生成的方法存根
        MainBoard mb = new MainBoard();
        mb.run();
        mb.useNetCard(new NetCard());
    }

}
这里写代码片
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值