2010-01-11 10 views
6

मैं कुछ पर काम कर रहा हूँ करने के लिए जावा टिप्पणी जोड़ें कि हो सकता है निम्नलिखित की तरह एक पैटर्न से लाभ:विरासत में मिला क्षेत्र

public abstract class SomeBuisnessThingy() 
{ 
    protected int someDatapoint; 
} 

public class ADatabaseThingy() extends SomeBusinessThingy() 
{ 
    @SomeJPAAnnotation 
    ???? someDatapoint; 
} 

public class AWebServiceThingy() extends SomeBusinessThingy() 
{ 
    @SomeSOAPStuff 
    ???? someDatapoint; 
} 

यह अधिक एक अमूर्त वर्ग से एक इंटरफेस की तरह बदबू आ रही है, लेकिन एक ही बात की जरूरत है किया जाना। मेरे पास उस वर्ग का डीबी कार्यान्वयन और उस वर्ग के डब्ल्यूएस कार्यान्वयन है।

ये प्रतिनिधित्व बहुत समान हैं, लेकिन अलग-अलग हो सकते हैं। उदाहरण के लिए डब्ल्यूएस कक्षा एक स्ट्रिंग के रूप में एक क्षेत्र का पर्दाफाश कर सकती है, इसलिए एक तीसरी पार्टी आसानी से एकीकरण कर सकती है, इसे अपने पैकेज में भी विभाजित किया जा सकता है ताकि हम ग्राहक को कुछ हल्के वेब सेवा या पीओजेओ कक्षाएं डीबी के सभी सामानों के बिना सौंप सकें या इसके साथ आने वाला एक जेपीए ढांचा। शायद इसका उपयोग किसी चीज के लिए आवश्यक बुनियादी वर्ग बनाने के लिए किया जा सकता है, फिर विभिन्न एनोटेशन का उपयोग करने वाले दृढ़ता ढांचे के बीच स्विच करें।

क्या विरासत वाले क्षेत्रों में एनोटेशन जोड़ना संभव है?

उत्तर

7

नहीं। यदि आपको विरासत में सदस्यों को एनोटेट करने की आवश्यकता है, तो आपको फ़ील्ड नहीं, विधियों को एनोटेट करने की आवश्यकता है।

संबंधित मुद्दे