2010-12-27 14 views
5

मुझे एहसास है कि यह समस्या कुछ हद तक मामूली है, लेकिन मुझे "सही" उत्तर जानने में दिलचस्पी है।खाली जावा जेनरिक

मैं android.os.AsyncTask< पैरामीटर, प्रगति, परिणाम >,
विस्तार करने के लिए कोशिश कर रहा हूँ, लेकिन मेरे काम कोई पैरामीटर की आवश्यकता नहीं है।

यह देखते हुए कि मुझे protected Result doInBackground(Params... params),
अधिभारित करना है, कोई पैरामीटर में पास करने का "सर्वश्रेष्ठ" तरीका क्या है?

वर्तमान में, मैं Params प्रकार के रूप में Object उपयोग कर रहा हूँ और साथ काम शुरू करने:
new MyAsyncTask().execute((Object)null);
यह पूरी तरह कार्यात्मक है, लेकिन मैं जावा के लिए नया हूँ और अगर यह की एक अच्छा तरीका है पता नहीं है जो मैं करने की कोशिश कर रहा हूं उसे पूरा करना।

जाहिर है मैं कुछ void या Params क्षेत्र के लिए में null की तरह नहीं डाल सकते, लेकिन अगर मैं किसी वाइल्डकार्ड का उपयोग मैं क्या doInBackground(Params... params) के तर्क के बारे में क्या करने के लिए की अनिश्चित हूँ।

कोई सुझाव?

+0

... और फिर मुझे एहसास हुआ कि इसका उत्तर Android डेवलपर संदर्भ मैनुअल (AsyncTask के तहत) में था। इस बारे में अधिक जानकारी में रुचि रखने वाला कोई भी व्यक्ति: http://developer.android.com/reference/android/os/AsyncTask.html – koschei

उत्तर

9

उपयोग Void किसी भी डेटा प्रकार है कि आप की जरूरत नहीं है के लिए (राजधानी वी पर ध्यान दें)। @Override एनोटेशन का उपयोग करना सुनिश्चित करें, इसलिए कंपाइलर को कोई समस्या होगी। Here is a sample application इसका प्रदर्शन।

+0

त्वरित प्रतिक्रिया के लिए धन्यवाद! – koschei

+0

Eyyy! मैं तेज़ था> Cristian

+0

हे, यकीन है, लेकिन उसका जवाब हर किसी के सुपरसैट है (बशर्ते कि उदाहरण निष्पादित करने के लिए नो-एर्ग विधि कॉल शामिल है)। मैं आपके उत्तर की सराहना करता हूं, क्रिस्टियन, जो आपके लिए लायक है। : p – koschei

5

Void कक्षा का उपयोग करें।

android.os.AsyncTask<Void, Void, Void> 
2

आप Void कक्षा का उपयोग कर सकते हैं। इसलिए जैसा:

android.os.AsyncTask<Void, Void, Void> 
1

आप varargs पैरामीटर की आवश्यकता होती है विधि के लिए किसी भी पैरामीटर पास नहीं करना चाहते हैं, बस, कुछ भी नहीं पारित इस तरह:

new MyAsyncTask().execute(); 

varargs पैरामीटर का अर्थ है "0 या अधिक" मूल्यों।