Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C#

फ़ंक्शन ओवरराइडिंग और सी # में छिपाने की विधि के बीच क्या अंतर है?

ओवरराइडिंग

ओवरराइडिंग के तहत, आप एक ऐसे व्यवहार को परिभाषित कर सकते हैं जो उपवर्ग प्रकार के लिए विशिष्ट है, जिसका अर्थ है कि एक उपवर्ग अपनी आवश्यकता के आधार पर एक मूल वर्ग विधि को लागू कर सकता है।

आइए हम अमूर्त वर्गों का एक उदाहरण देखें जो ओवरराइडिंग को लागू करता है -

उदाहरण

using System;

namespace PolymorphismApplication {
   abstract class Shape {
      public abstract int area();
   }

   class Rectangle: Shape {
      private int length;
      private int width;

      public Rectangle( int a = 0, int b = 0) {
         length = a;
         width = b;
      }

      public override int area () {
         Console.WriteLine("Rectangle class area :");
         return (width * length);
      }
   }

   class RectangleTester {
      static void Main(string[] args) {
         Rectangle r = new Rectangle(10, 7);
         double a = r.area();
         Console.WriteLine("Area: {0}",a);
         Console.ReadKey();
      }
   }
}

विधि छिपाने (छायांकन)

छायांकन को विधि छिपाने के रूप में भी जाना जाता है। शैडोइंग में ओवरराइड कीवर्ड का उपयोग किए बिना पेरेंट क्लास की विधि चाइल्ड क्लास के लिए उपलब्ध है। चाइल्ड क्लास का एक ही फ़ंक्शन का अपना संस्करण होता है।

शैडोइंग करने के लिए नए कीवर्ड का उपयोग करें।

आइए एक उदाहरण देखें -

उदाहरण

using System;
using System.Collections.Generic;

class Demo {
   public class Parent {
      public string Display() {
         return "Parent Class!";
      }
   }

   public class Child : Parent {
      public new string Display() {
         return "Child Class!";
      }
   }

   static void Main(String[] args) {
      Child child = new Child();
      Console.WriteLine(child.Display());
   }
}

  1. एक विधि और एक फ़ंक्शन के बीच अंतर क्या है?

    अलग-अलग शब्दों के साथ विधि और कार्य समान हैं। ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग में एक विधि एक प्रक्रिया या कार्य है। फ़ंक्शन पुन:प्रयोज्य कोड का एक समूह है जिसे आपके प्रोग्राम में कहीं भी कहा जा सकता है। इससे एक ही कोड को बार-बार लिखने की जरूरत खत्म हो जाती है। यह प्रोग्रामर्स को मॉड्यूलर कोड लिखने म

  1. जावास्क्रिप्ट में कार्यों और विधियों में क्या अंतर है?

    जावास्क्रिप्ट में कार्य और विधियाँ समान हैं, लेकिन विधि एक फ़ंक्शन है, जो किसी वस्तु का गुण है। जावास्क्रिप्ट में फ़ंक्शन का एक उदाहरण निम्नलिखित है - function functionname(param1, param2){    // code } उदाहरण विधि किसी ऑब्जेक्ट से संबद्ध एक फ़ंक्शन है। जावास्क्रिप्ट में एक विधि का उदाहरण

  1. सी # में कक्षा और वस्तु के बीच क्या अंतर है?

    जब आप किसी वर्ग को परिभाषित करते हैं, तो आप डेटा प्रकार के लिए एक खाका परिभाषित करते हैं। ऑब्जेक्ट एक वर्ग के उदाहरण हैं। एक वर्ग का गठन करने वाली विधियों और चरों को वर्ग के सदस्य कहा जाता है। कक्षा के सदस्यों तक पहुँचने के लिए, आप ऑब्जेक्ट नाम के बाद डॉट (.) ऑपरेटर का उपयोग करते हैं। डॉट ऑपरेटर क