2012-12-08 18 views
6

एक कक्षा एक इकाई में विधियों और चर के बाध्यकारी है।
एक वस्तु एक वर्ग का एक उदाहरण है।कक्षाओं और ऑब्जेक्ट उदाहरणों के बीच क्या अंतर है?

ये प्रोग्रामिंग किताबों में कक्षाओं और वस्तुओं के लिए परिभाषाएं हैं। मेरे दोस्त ने कहा कि एक वर्ग एक वस्तु का एक ब्लूप्रिंट है। एक वस्तु एक ब्लूप्रिंट की वास्तविक "चीज़" है। उन्होंने एक उदाहरण दिया है: यदि कंपनी एक वर्ग, इन्फोसिस, सीटीएस, और टीसीएस आदि वस्तुएं हैं। जब भी मैं कक्षाओं और वस्तुओं के बारे में सोचता हूं, ये परिभाषाएं मुझे भ्रमित करती हैं। यदि चैनल एक वर्ग है, तो वर्ग के लिए वस्तुएं क्या होंगी? यदि पानी एक वर्ग है, तो वर्ग की वस्तुएं क्या होंगी? क्या आप स्पष्ट कर सकते हो?

+2

आपको एक अच्छी किताब पढ़नी चाहिए और कुछ उदाहरणों के माध्यम से काम करना चाहिए ... – home

+0

आपका मित्र गलत है। कक्षाओं को वस्तुओं को माना जा सकता है। –

+1

लेकिन केवल कुछ भाषाओं में ... – Sheena

उत्तर

11

यदि चैनल एक वर्ग है, तो खेल शुरू करें, बीबीसी, और ईएसपीएन इसकी वस्तुएं हैं। यदि पानी एक वर्ग है, तो "ताजा नींबू पानी" और "सूप" इसकी वस्तुएं हैं।

हालांकि आपको यह स्पष्टीकरण अस्पष्ट पता चल सकता है, यह वह उत्तर है जिसे मैं सोच सकता हूं।

यहाँ कैसे आप के बारे में जानने के लिए और वर्गों को अलग कर सकते है:

आप एक वर्ग "कार"

इसकी वस्तुओं हुंडई, फोर्ड, सुजुकी हैं कहो। इसमें वही विधियां होंगी लेकिन विभिन्न डिज़ाइन -> इस प्रकार आप असली दुनिया के साथ वस्तुओं और कक्षाओं को जोड़ सकते हैं।

+0

आपके स्पष्टीकरण के लिए धन्यवाद। अगर चैनल एक है ऑब्जेक्ट क्लास क्या होगा? –

+0

मैंने पहले ही अपने उत्तर में इसका उल्लेख किया है कृपया इसे पढ़ें। यदि चैनल ईएसपीएन ऑब्जेक्ट है, स्टार्ट सर्ट्स, टेन स्पोर्ट्स, बीबीसी, सीएनबीसी इत्यादि हैं। –

1

मैं आपको क्लासिक स्पष्टीकरण दूंगा, आप इस जगह के विभिन्न संस्करणों को पा सकते हैं।

एक कक्षा ब्लूप्रिंट की तरह है। मान लें कि आप एक कार बनाना चाहते हैं, पहली चीज़ जो आपको चाहिए वह एक योजना है, यह कक्षा है। योजना 'विधियों' जैसे brake और hoot का वर्णन करेगी। यह कार के विभिन्न घटकों का भी वर्णन करेगा। ये चर हैं।

एक कार वस्तु कार श्रेणी का एक तत्काल है। आप इनमें से बहुत सी कार कक्षा के लिए हो सकते हैं।

उदाहरण के लिए:

class Car: 
    def __init__(self,color): 
     self.color = color 

    def hoot(self): 
     "do stuff" 


red_car = Car('red') 
red_car.hoot() 
blue_car = Car('blue') 
blue_car.hoot() 

अब, भाषा के आधार पर आप वर्गों का उपयोग कर रहे हैं खुद को वस्तुओं हो सकता है (इस अजगर में मामला है)। इस तरह से सोचें: सभी ब्लूप्रिंट्स में कुछ सामान आम हैं। ब्लूप्रिंट की कक्षा में यह सामान्य सामान वर्णित है (जो स्वयं में एक ब्लूप्रिंट है)।

फिर एक वर्ग के रूप में 'पानी' के मुद्दे पर आप इसे कुछ तरीकों से आप क्या करना चाहते हैं पर निर्भर करता है संपर्क कर सकते हैं:

तरीका 1:

बल्कि एक वर्ग चर के साथ तरल कहा जाता है चिपचिपापन, गंध, घनत्व, मात्रा, आदि जैसे सामान का वर्णन करना पानी इसका एक उदाहरण होगा। तो संतरे का रस

रास्ता 2 होगा:

कहते हैं कि तुम एक साथ ब्लॉक कि अलग अलग इलाके से बना हो जाएगा का एक समूह के साथ एक खेल डाल रहे थे। इसके बाद आप घास, जल, रॉक इत्यादि जैसे कक्षाएं (सोच माइनक्राफ्ट) कर सकते हैं। फिर आपके पास एक जल वर्ग उदाहरण (एक पानी वस्तु) मानचित्र पर एक विशिष्ट स्थिति पर कब्जा कर सकते हैं।

0

वास्तविक दुनिया में, आपको अक्सर एक ही तरह की कई अलग-अलग वस्तुएं मिलती हैं। अस्तित्व में हजारों अन्य चैनल हो सकते हैं, वही मेक और मॉडल। प्रत्येक चैनल ब्लूप्रिंट के उसी सेट से बनाया गया था और इसलिए एक ही घटक होते हैं। ऑब्जेक्ट उन्मुख शब्दों में, हम कहते हैं कि आपका चैनल चैनल के रूप में जाने वाली वस्तुओं के वर्ग का एक उदाहरण है। एक वर्ग ब्लूप्रिंट होता है जिससे व्यक्तिगत वस्तुएं बनाई जाती हैं।

class Channel { 

    ChannelType type = 0; 
    int employeeCount = 0; 


    void setType(ChannelType newType) { 
     type = newValue; 
    } 

    void addEmployer(int increment) { 
     employeeCount= employeeCount+ increment; 
    } 

    void removeEmployer(int decrement) { 
     employeeCount= employeeCount- decrement; 
    } 

    void printStates() { 
     System.out.println("type :" + 
      type + " employee count:" + employeeCount); 
    } 
} 

इस वर्ग का डिज़ाइन चैनल ऑब्जेक्ट्स की पिछली चर्चा पर आधारित है। फ़ील्ड्स टाइप, कर्मचारीकाउंट ऑब्जेक्ट के राज्य का प्रतिनिधित्व करता है, और विधियों (सेट टाइप, ऐड नियोक्ता, निकालने वाला इत्यादि) बाहरी दुनिया के साथ अपनी बातचीत को परिभाषित करता है।

आपने देखा होगा कि चैनल क्लास में मुख्य विधि नहीं है। ऐसा इसलिए है क्योंकि यह एक पूर्ण आवेदन नहीं है; यह केवल चैनलों के लिए ब्लूप्रिंट है जिसका उपयोग किसी एप्लिकेशन में किया जा सकता है। नई चेनेल वस्तुओं को बनाने और उपयोग करने की ज़िम्मेदारी आपके आवेदन में किसी अन्य वर्ग से संबंधित है।

class Channel Demo { 

    public static void main(String[] args) { 

     // Create two different 
     // Channel objects 
     Channel BBC= new Channel(); 
     Channel NTV = new Channel(); 

     // Invoke methods on 
     // those objects 
     BBC.setType(channeltype.NEWS); 
     BBC.addEmployer(500); 
     BBC.printStates(); 

     BBC.setType(channeltype.SPORT); 
     BBC.addEmployer(300); 
     BBC.printStates(); 


    } 
} 

दो चैनलों के लिए इस परीक्षा में प्रिंट का उत्पादन:

प्रकार: समाचार कर्मचारी गिनती: 500

प्रकार: खेल कर्मचारी गिनती: 300

5

एक वर्ग के व्यवहार को निर्दिष्ट करता है इसके उदाहरण

एक कक्षा भी कक्षा का एक उदाहरण है (कक्षा के लिए वर्ग को "मेटाक्लास" नाम दिया जाता है)।

एक कक्षा एक अमूर्त है। ऑब्जेक्ट्स के समूह में लागू सामान्य गुणों को ढूंढकर आपको कक्षा मिलती है।

फिर एक वर्ग जो तरीकों (व्यवहार) और चर (राज्य) को परिभाषित करता है एक टेम्पलेट वस्तु एक विशेष प्रकार की कक्षाओं के

पहचान (बाहर कक्षा) में शामिल किए जाने के अनुभव की आवश्यकता है।

एलन के से कुछ भी पढ़ें, वह ऑब्जेक्ट टेक्नोलॉजी का आविष्कारक है, और स्मॉलटाक के आविष्कारकों में से एक है, जो आज के रूप में एकमात्र शुद्ध वस्तु वातावरण है।

-1

एक वस्तु कुछ विशेषताओं और व्यवहार के साथ एक पहचान योग्य इकाई है। यह एक ऐसी इकाई का प्रतिनिधित्व करता है जो डेटा और उसके संबंधित फ़ंक्शन को संग्रहीत कर सकता है।

एक कक्षा उन वस्तुओं का एक समूह है जो आम संपत्तियों और रिश्तों को साझा करती हैं। यह समान वस्तुओं के एक समूह का प्रतिनिधित्व करता है।

2

मेरे पास प्रोग्रामिंग अनुभव नहीं है, लेकिन मेरे एक दोस्त ने कक्षा और वस्तु को परिभाषित करने का एक अच्छा उदाहरण बनाया है। मैं जितनी संभव हो सके मानव भाषा का उपयोग करने के लिए अपनी पूरी कोशिश करूंगा।

घोड़ा लें। आपको क्या पता चलेगा कि यह जानवर एक घोड़ा है और नहीं ... कुत्ता? क्योंकि इसमें चार पैर हैं, यह एक बड़ा जानवर है, यह बहुत मजबूत है और यह दौड़ सकता है। खैर, आपने बस अपने सिर में 'घोड़ा' वर्ग परिभाषित किया है! अब, आप 'पोलिलीना' नामक एक सफेद मादा घोड़ा और 'डेमन' नामक एक काले पुरुष घोड़े को देखने जा रहे हैं। जैसे ही आप उन्हें देखते हैं आप जानते हैं कि वे घोड़े हैं, इसलिए वे 'घोड़े' वर्ग से संबंधित हैं। उन्हें क्या अलग बनाता है? लिंग और रंग ... वे 'घोड़े' वर्ग के गुण हैं। 'पोलिनान्ना' और 'डेमन' दो वस्तुएं हैं, वे असली चीज हैं, चीजें जो आप वास्तव में स्पर्श और सवारी कर सकते हैं। उनकी गुण, लिंग और रंग भी अलग हैं। Pollyanna सफेद और महिला है। दानव काला और नर है। वे परिभाषित गुण एक वस्तु से दूसरे वस्तु को अलग करते हैं। दूसरे से एक घोड़ा। लेकिन वे अभी भी एक ही कक्षा के हैं: वे हमेशा घोड़े हैं!

अधिक तकनीकी अब ... एक वर्ग कुछ की एक और सार परिभाषा है। एक ब्लूप्रिंट एक वस्तु असली चीज है जो उस वर्ग से संबंधित है। जब आप कक्षा से एक नई वस्तु बनाते हैं तो आप किसी ऑब्जेक्ट को तत्काल कर रहे हैं (उर्फ एक उदाहरण बना रहा है)।

आशा इस मदद करता है, और अगर यह खेद नहीं है ... जैसा कि मैंने पहले कहा, मैं बहुत प्रोग्रामिंग अनुभव :)

जाएनलुका

0

व्याकरण में नहीं है जातिवाचक संज्ञा क्लास और व्यक्तिवाचक संज्ञा है वस्तु है

0

एक वस्तु का सीमित जीवनकाल होता है, ऑब्जेक्ट बनाया जाता है और अंततः नष्ट हो जाता है। इसके अलावा उस जीवनकाल के दौरान, वस्तु में महत्वपूर्ण बदलाव हो सकता है

-1

शब्द और वस्तु शब्द निश्चित रूप से किसी अन्य से संबंधित हैं, लेकिन प्रत्येक शब्द का अपना अलग अर्थ होता है। आइए कक्षा की अवधि का अर्थ बताकर शुरू करें। कक्षा कोड के actuall writtten टुकड़े को संदर्भित करता है जिसका उपयोग किसी दिए गए वर्ग के व्यवहार को परिभाषित करने के लिए किया जाता है। इसलिए हमें कक्षा का एक स्थिर पासा होता है जिसमें वे अंश होते हैं जो ऑरोग्राम के निष्पादन के दौरान नहीं बदलते हैं। ऑब्जेक्ट एक संदर्भित करता है एक class.Every की वास्तविक उदाहरण उदाहरण ibhect एक वर्ग

0

कक्षा

  1. करने के लिए एक तरह से एक साथ डेटा और संबद्ध कार्यों बाध्य करने के लिए होना चाहिए।
  2. कक्षा में कई वस्तुएं हैं।
  3. कक्षा वस्तुओं को बनाने के लिए एक टेम्पलेट है।
  4. यह तार्किक अस्तित्व है।
  5. मेमोरी स्पेस आवंटित नहीं किया जाता है, जब इसे बनाया जाता है।
  6. परिभाषा (घोषणा) एक बार बनाई गई है।
  7. कक्षा "कक्षा" कीवर्ड का उपयोग कर घोषित किया गया है। वस्तु उन्मुख वातावरण में

वस्तु

  1. बेसिक क्रम इकाई।
  2. ऑब्जेक्ट केवल कक्षा से संबंधित है।
  3. ऑब्जेक्ट कक्षा का कार्यान्वयन है।
  4. यह भौतिक अस्तित्व है।
  5. मेमोरी स्पेस आवंटित होने पर आवंटित किया जाता है।
  6. यह आवश्यकतानुसार कई बार बनाया गया है।
  7. ऑब्जेक्ट क्लास का उदाहरण या चर है।
संबंधित मुद्दे