यह क्षणिक होने की आवश्यकता क्यों है?
यह करता है यह क्योंकि यह कस्टम readObject
और writeObject
तरीकों कि डिफ़ॉल्ट से क्रमबद्धता का एक बेहतर काम कर सकते हैं। विशेष रूप से, writeObject विधि केवल आकार और तत्वों के अनुक्रम लिखता है। यह निजी सरणी ऑब्जेक्ट को क्रमबद्ध करने से बचाता है, जिसमें 1) का अपना हेडर और ओवरहेड्स होता है, और 2) आमतौर पर null
एस के साथ गद्देदार होता है। अंतरिक्ष की बचत महत्वपूर्ण हो सकती है।
(वास्तव में, मुझे नहीं लगता कि उस क्षेत्र सख्ती से जरूरत बिल्कुल transient
के रूप में घोषित किया जाना है, लेकिन यह डेवलपर के इरादे दस्तावेज़ के लिए मदद करता है।)
क्यों कर सकते हैं ' इस वर्ग को क्रमबद्ध किया जा सकता है?
एक पूरे के रूप ArrayList
वर्ग धारावाहिक जा सकता है। Object[]
को क्रमबद्ध किया जा सकता है, लेकिन उन्होंने इसे एक और तरीके से लागू करना चुना।
1 - वास्तव में, यह तत्व 'क्रम प्रकार पर निर्भर करता है। उदाहरण के लिए, यदि आपने ArrayList
को Thread
संदर्भों को क्रमबद्ध करने का प्रयास किया है, तो आपको पहले गैर-शून्य संदर्भ के लिए रनटाइम अपवाद मिलेगा।
स्रोत
2012-03-24 00:47:29