2015-02-18 5 views
13

मैं एंड्रॉयड विकास प्रलेखन देख रहा था कर रहे हैं, और मैं इस देखा:क्या प्रत्यक्ष और अप्रत्यक्ष उपवर्गों

public abstract class 
Buffer 
extends Object 
Known Direct Subclasses: 
ByteBuffer, CharBuffer, DoubleBuffer, FloatBuffer, IntBuffer, LongBuffer, ShortBuffer 
Known Indirect Subclasses: 
MappedByteBuffer 

बफर एक अमूर्त वर्ग कि instaniated नहीं किया जा सकता है। यह उत्तराधिकारी (विस्तार) ऑब्जेक्ट।

लेकिन मैं प्रत्यक्ष और अप्रत्यक्ष उप-वर्गों के बारे में उलझन में हूं। मेरा सबसे अच्छा अनुमान होगा: Direct सुपर क्लास से सीधे विस्तारित करें। Indirect यह एक सुपर क्लास से फैला है जो सीधे कक्षा में प्रश्न को बढ़ाता है।

किसी भी सुझाव के लिए बहुत धन्यवाद,

+5

आप सही हैं। _indirect_ के साथ, सुपरक्लास को प्रश्न के वर्ग के प्रत्यक्ष उप-प्रकार होने की आवश्यकता नहीं है, यह नीचे के स्तरों की संख्या हो सकती है। –

उत्तर

14

आप सही हैं। ज्ञात प्रत्यक्ष संबंध का तात्पर्य है कि कक्षा तत्काल पूर्वजों है। ज्ञात ज्ञात प्रत्यक्ष संबंध का तात्पर्य है कि कक्षा को उप-वर्ग माना जाता है, लेकिन वास्तव में यह माता-पिता के नीचे कई स्तर हो सकता है।

3

को देखते हुए class A:

class B extends A // B is direct subclass of A 
class C extends B // C is indirect subclass of A 
class Z extends C // Z is indirect subclass of A 

आप समझ गए।

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