स्थैतिक बहुरूपता संकलन समय के दौरान किसी फ़ंक्शन को किसी वस्तु के साथ जोड़ने को स्थैतिक कहा जाता है। इसे स्टैटिक बाइंडिंग भी कहा जाता है। C# स्टैटिक पॉलीमॉर्फिज्म यानी फंक्शन ओवरलोडिंग और ऑपरेटर ओवरलोडिंग को लागू करने के लिए दो तकनीकें प्रदान करता है।
आइए फंक्शन ओवरलोडिंग के बारे में जानें। आपके पास एक ही फ़ंक्शन नाम के लिए एक ही दायरे में कई परिभाषाएँ हो सकती हैं। फ़ंक्शन की परिभाषा तर्क सूची में प्रकार और/या तर्कों की संख्या से एक दूसरे से भिन्न होनी चाहिए। आप फ़ंक्शन घोषणाओं को अधिभारित नहीं कर सकते जो केवल रिटर्न प्रकार से भिन्न होती हैं।
निम्नलिखित पूरा उदाहरण है -
उदाहरण
using System; namespace PolymorphismApplication { class Printdata { void print(int i) { Console.WriteLine("Printing int: {0}", i ); } void print(double f) { Console.WriteLine("Printing float: {0}" , f); } void print(string s) { Console.WriteLine("Printing string: {0}", s); } static void Main(string[] args) { Printdata p = new Printdata(); // Call print to print integer p.print(5); // Call print to print float p.print(500.263); // Call print to print string p.print("Hello C++"); Console.ReadKey(); } } }