यह मेरी समझ है कि पैरामीट्रिक पॉलिमॉर्फिज्म एक ऐसी तकनीक है जो विभिन्न प्रकार के डेटा (प्रकारों) पर समान क्रियाओं की अनुमति देती है। क्या मेरा ज्ञान सही है?जावा में पैरामीट्रिक बहुरूपता क्या है (उदाहरण के साथ)?
क्या यह उदाहरण पैरामीट्रिक बहुरूपता है? मेरा मानना है कि यह तब से है जब Animal.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());
}
}
}
सम्मान।
संपादित करें: यदि मेरा उदाहरण विशेष रूप से पैरामीट्रिक पॉलीमोर्फिज्म का प्रदर्शन नहीं कर रहा है तो कृपया आप एक प्रदान करेंगे? धन्यवाद।
सही दिखता है। असल में, आप पशु प्रकार के आधार पर अपने वास्तविक प्रकार के संबंध में बिल्ली और कुत्ते का इलाज करते हैं। – dvallejo
एक हास्केलर के रूप में, मैं उस पैरामीट्रिक बहुरूपता को नहीं बुलाऊंगा। एक पैरामीट्रिक बहुरूपी समारोह की तरह 'LinkedList रिवर्स (LinkedList )' कुछ है कि _parameter_ सभी प्रकार 'T' के लिए ही काम करता होगा। एक पैरामीट्रिक पॉलिमॉर्फिक फ़ंक्शन इंटरफ़ेस विधियों को कॉल नहीं कर सकता है। –