2010-04-27 14 views
17

मैं इस शर्तों का अर्थ खोजने की कोशिश कर रहा था लेकिन विशेष रूप से भाषा बाधा के कारण मैं समझ नहीं पाया कि उनका क्या उपयोग किया जाता है। मुझे लगता है कि "फ़ील्ड" कक्षा में परिवर्तनीय (ऑब्जेक्ट भी है?) जबकि "प्रॉपर्टी" केवल एक ऑब्जेक्ट है जो विशिष्ट मान देता है और इसमें विधियां आदि नहीं हो सकती हैं। "सदस्य" द्वारा मैं वर्ग स्तर पर घोषित किसी ऑब्जेक्ट को समझता हूं । लेकिन ये सिर्फ मेरी मान्यताओं पर टिप्पणी कोड नमूने के आधार पर हैं जहां कुछ सावधान प्रोग्रामर "संपत्ति क्षेत्र" आदि का उपयोग करते हैं। अगर कोई मुझे यह समझा सकता है तो मैं वास्तव में सराहना करता हूं।प्रोग्रामिंग शब्द - फ़ील्ड, सदस्य, गुण (सी #)

उत्तर

38

सी # में:

क्षेत्रों: इन चरों श्रेणी स्तर पर घोषित कर रहे हैं।

public class SomeClass 
{ 
    private int someInteger; // This is a field 
    public double someDouble; // This is another field 
    protected StringBuidler stringBuidler; // Still another field 
} 

गुण: अक्सर एक वर्ग के लिए एक निजी क्षेत्र के लिए accessors रूप में इस्तेमाल किया, वे हो जाते हैं और सेट तरीकों कि क्षेत्र में गड़बड़ी के आसपास कुछ तर्क लपेट प्रदान कर सकते हैं।

public class SomeClass 
{ 
    private StringBuilder stringBuilder; 

    // Property declaration 
    public StringBuilder StringBuilder 
    { 
     get 
     { 
      if(this.stringBuilder == null) 
       this.stringBuilder = new StringBuidler(); 

      return this.stringBuilder; 
     } 
     set 
     { 
      if(this.stringBuilder == null) 
       this.stringbuilder = value; 
     } 
    } 
} 

सदस्यों: क्षेत्रों, गुण, तरीकों, एक वर्ग की घटनाओं शामिल है।

1

इस क्षेत्र में शब्दावली निराशाजनक रूप से झुका हुआ है और भाषा से भाषा, और मॉडल से मॉडल तक जंगली रूप से बदलती है। क्या आपके पास एक विशिष्ट भाषा या मंच है?

एक पहली सन्निकटन के लिए

:

  1. एसक्यूएल विचार विमर्श अक्सर क्षेत्र और स्तंभ दूसरे के स्थान पर उपयोग करें। फ़ील्ड जावा और सी # कक्षाओं के डेटा सदस्यों के लिए मानक शब्दावली भी है।
  2. सदस्य सबसे अधिक C++ प्रयोग किया जाता है सदस्य कार्यों, सदस्य चर, और इतने पर, एक struct/वर्ग परिभाषा के विभिन्न विभिन्न सदस्यों के लिए उल्लेख करने के लिए।
+0

हां, क्षमा करें - सी #। – Petr

0

उन शर्तों में भिन्न भाषाएं हैं और इसलिए वे काफी हद तक ओवरलैप करते हैं और अवधारणा के बारे में ठोस भाषाओं के बारे में भिन्नताएं अधिक होती हैं। वर्गों में डेटा का वर्णन करने के लिए संपत्ति और क्षेत्र का उपयोग किया जाता है, सदस्य वर्गों में डेटा और व्यवहार (जैसे विधियों) हो सकते हैं। हालांकि सी # और जावा में गुणों और क्षेत्रों के बीच भिन्नताएं हैं, लेकिन यह वाक्य रचनात्मक चीनी है। यदि आप प्रोटोटाइप आधारित ऑब्जेक्ट ओरिएंटेड भाषा (वर्ग आधारित के विपरीत) का उपयोग कर रहे थे तो आप ऑब्जेक्ट्स के स्लॉट्स के बारे में बात करेंगे ... यदि आप संपूर्ण अर्थ को समझना चाहते हैं, तो पहले एक भाषा चुनें।

संबंधित मुद्दे