मैं कोड को संशोधित कर रहा हूं मैंने लिखा नहीं है कि जावामेल का उपयोग करता है, और थोड़ी परेशानी हो रही है कि जावामेल एपीआई किस तरह से डिज़ाइन किया गया है। मुझे यह महसूस हो रहा है कि अगर मैं समझ गया, तो मैं बेहतर काम कर रहा था।जावामेल ट्रांसपोर्ट.send() एक स्थिर विधि क्यों है?
हम कहते हैं:
transport = session.getTransport("smtp");
transport.connect(hostName, port, user, password);
तो क्यों ग्रहण मुझे चेतावनी है यह है कि:
transport.send(message, message.getAllRecipients());
एक स्थिर विधि के लिए एक कॉल है?
मुझे ट्रांसपोर्ट ऑब्जेक्ट क्यों मिल रहा है और यदि मैं उस ऑब्जेक्ट का संदेश भेजने के लिए उपयोग नहीं कर सकता तो सेटिंग्स को प्रदान कर रहा हूं? ट्रांसपोर्ट क्लास को यह भी पता है कि संदेश भेजने के लिए किस सर्वर और अन्य सेटिंग्स का उपयोग करना है? यह ठीक काम कर रहा है, जो विश्वास करना मुश्किल है। क्या होगा यदि मैंने दो अलग-अलग सर्वरों के लिए परिवहन ऑब्जेक्ट्स को तुरंत चालू किया था; यह कैसे पता चलेगा कि किस का उपयोग करना है?
इस प्रश्न लिखने के पाठ्यक्रम में, मुझे पता चला है कि मैं वास्तव में बुला जाना चाहिए:
transport.sendMessage(message, message.getAllRecipients());
तो स्थिर Transport.send() विधि के उद्देश्य क्या है? क्या यह सिर्फ खराब डिजाइन है, या क्या ऐसा कोई कारण है?