gpt4 book ai didi

java - 什么是 Java 中的参数多态性(附示例)?

转载 作者:太空狗 更新时间:2023-10-29 22:50:03 25 4
gpt4 key购买 nike

据我了解,参数多态性是一种允许对各种数据(类型)进行统一操作的技术。我的认识正确吗?

这个例子是参数多态吗?我相信这是因为 Animal.talk 允许调用 talk,尽管是特定的动物类型(猫或狗)。

public interface Animal
{
public String talk();
}

public class Cat implements Animal
{
public String talk()
{
return "Cat says Meow!";
}
}

public class Dog implements Animal
{
public String talk()
{
return "Dog says Woof! Woof!";
}
}

import java.util.*;

public class PolymorphismExample
{
public static void main(String[] args)
{
Collection<Animal> animals = new ArrayList<Animal>();
animals.add(new Cat());
animals.add(new Dog());
for (Animal a : animals)
{
System.out.println(a.talk());
}
}
}

问候。

编辑:如果我的示例没有具体展示参数多态性,请您提供一个?谢谢。

最佳答案

“参数多态性”只是 Java 中“泛型”的另一个术语。这个想法很简单:您声明特定类将使用什么类型java.util 包的所有集合中都有一个明显的例子。

为了学习 Java 中泛型的所有细微差别,我强烈推荐 Angelika Langer 的 FAQ , 它探索了规范的每个角落。

在您的代码中,这一行是使用泛型的示例:

Collection<Animal> animals = new ArrayList<Animal>();

指定一个集合来保存任何动物对象。

关于java - 什么是 Java 中的参数多态性(附示例)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10179449/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com