不同类对象的队列
创始人
2025-01-09 07:30:02
0

以下是一个示例代码,演示了如何使用Java中的队列(Queue)来存储不同类对象。

首先,我们定义一个父类Animal,它有一个属性name和一个方法makeSound()。

public abstract class Animal {
    private String name;

    public Animal(String name) {
        this.name = name;
    }

    public abstract void makeSound();

    public String getName() {
        return name;
    }
}

然后,我们定义两个子类Cat和Dog,它们都继承自Animal,并实现了makeSound()方法。

public class Cat extends Animal {
    public Cat(String name) {
        super(name);
    }

    @Override
    public void makeSound() {
        System.out.println(getName() + " makes meow sound");
    }
}

public class Dog extends Animal {
    public Dog(String name) {
        super(name);
    }

    @Override
    public void makeSound() {
        System.out.println(getName() + " makes woof sound");
    }
}

最后,我们使用Queue来存储不同类对象。

import java.util.LinkedList;
import java.util.Queue;

public class Main {
    public static void main(String[] args) {
        Queue animalQueue = new LinkedList<>();

        Animal cat = new Cat("Kitty");
        Animal dog = new Dog("Buddy");

        animalQueue.add(cat);
        animalQueue.add(dog);

        while (!animalQueue.isEmpty()) {
            Animal animal = animalQueue.poll();
            animal.makeSound();
        }
    }
}

在上面的示例中,我们创建了一个Queue对象animalQueue,并向其中添加了一个Cat对象和一个Dog对象。然后,我们使用while循环遍历队列,不断从队列中取出对象,并调用其makeSound()方法。这样,我们就能够按照添加的顺序依次输出它们的声音。

输出结果如下:

Kitty makes meow sound
Buddy makes woof sound

注意,由于animalQueue是一个Queue类型的对象,可以存储Animal的子类对象。这是因为子类对象可以向上转型为父类对象。所以,我们可以将Cat和Dog对象都存储在animalQueue中,并通过父类Animal的引用访问它们的属性和方法。

相关内容

热门资讯

透视挂!约局吧软件(WePoK... 透视挂!约局吧软件(WePoKer)外挂透明挂辅助app(辅助挂)解密教程(有挂存在)-哔哩哔哩;约...
最新技巧(wepoke透明)外... 最新技巧(wepoke透明)外挂透明挂辅助工具(透视)软件透明挂(有挂详细)-哔哩哔哩1、很好的工具...
透明总结(微扑克到底有挂)外挂... 透明总结(微扑克到底有挂)外挂透明挂辅助工具(辅助挂)软件透明挂(2022已更新)(哔哩哔哩);亲,...
科普常识(德扑ai操作)外挂透... 科普常识(德扑ai操作)外挂透明挂辅助机制(透视)软件透明挂(竟然有挂)-哔哩哔哩相信很多朋友都在电...
一分钟揭秘!Wepoke技巧(... 《Wepoke技巧软件透明挂》是一款多人竞技的Wepoke技巧辅助透视游戏,你将微扑克对手来到同一个...
分辨真假(Wepoke教学)外... 1、分辨真假(Wepoke教学)外挂透明挂辅助脚本(辅助挂)辅助透视(2023已更新)(哔哩哔哩);...
记者爆料(扑克世界app)外挂... 1、记者爆料(扑克世界app)外挂透明挂辅助APP(辅助挂)发牌规律(有挂讲解)-哔哩哔哩;该软件可...
透视好友!Wepoke程序(w... 透视好友!Wepoke程序(wePOKE)外挂透明挂辅助插件(透视)可靠技巧(新版有挂)-哔哩哔哩,...
透明软件(Wepoke AI)... 1、透明软件(Wepoke AI)外挂透明挂辅助机制(辅助挂)透视辅助(2022已更新)(哔哩哔哩)...
推荐一款(德扑之星底牌)外挂透... 推荐一款(德扑之星底牌)外挂透明挂辅助插件(透视)软件透明挂(有挂详细)-哔哩哔哩1、这是跨平台的德...