पूर्व जावा 5 में, कोई टिप्पणी नहीं थी। नतीजतन आप कक्षा में मेटाडेटा नहीं जोड़ सके।Java.io क्यों नहीं था। सरलीज़ेज़ेबल जावा 5 में बहिष्कृत?
public class MyClass implements Serializable {
...
private transient Bla field;
...
}
:
एक वर्ग के रूप serializable की तरह कुछ चिह्नित करने के लिए, आप Serializable इंटरफ़ेस को लागू करने के लिए किया था (जो सिर्फ इतना है कि, एक मार्कर है) और गैर serializable के रूप में एक क्षेत्र चिह्नित करने के लिए आगे transient
खोजशब्दों का उपयोग यदि आवश्यक हो,
अब आप सैद्धांतिक रूप से एनोटेशन का उपयोग कर सकता (यह उनके लिए एक सही उपयोग है) और है:
@Serializable
public class MyClass {
...
@Transient
private Bla field;
...
}
लेकिन इंटरफ़ेस और कीवर्ड पदावनत नहीं थे और कोई टिप्पणी जावा 5 में जोड़ा गया इनका स्थान ले लेंगे ।
इंटरफ़ेस और कीवर्ड रखने के इस निर्णय के लिए क्या विचार हैं?
बेशक पूर्व जावा 5 कोड के साथ संगतता का मुद्दा है, लेकिन कुछ बिंदु पर यह समाप्त होगा (उदा। जेनिक्स की नई विशेषताओं से संबंधित, जेएलएस निर्दिष्ट करता है कि It is possible that future versions of the Java programming language will disallow the use of raw types)। तो क्यों serialized एनोटेशन के लिए रास्ता तैयार नहीं है?
कोई विचार? (हालांकि मैं ठोस संदर्भ पसंद करेंगे: डी जो मैं खोजने में असमर्थ था)
आमतौर पर यह मौजूदा कोड पिछड़ा संगत बनाने के लिए किया जा रहा है। तो आप आसानी से अपग्रेड कर सकते हैं लेकिन नए एनोटेशन के लिए चरण-दर-चरण माइग्रेट कर सकते हैं। –
जेएलएस में आप किस अनुभाग का संदर्भ दे रहे हैं? – Atreys
@Atreys: वह है जिसमें * यह संभव है कि जावा प्रोग्रामिंग भाषा के भविष्य के संस्करण कच्चे प्रकार * टिप्पणी – ElenaT