मैं एक समारोह है कि अगर null
पारित हो जाता है संकलन नहीं होगा लिखने का प्रयास:'ए>: शून्य' का अर्थ?
$scala
Welcome to Scala 2.11.8 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_101).
Type in expressions for evaluation. Or try :help.
scala> :t null
Null
scala> def f[A >: Null](x: A):A = x
f: [A >: Null](x: A)A
हालांकि, यह के रूप में मैं उम्मीद काम नहीं किया:
scala> f(null)
res1: Null = null
'शून्य 'निचला बाउंड है, इसलिए इसकी अनुमति है लेकिन शून्य की कोई उपप्रकार अनुमति नहीं है। – puhlen
[स्कैला में प्रोग्रामिंग, तीसरा संस्करण] (http: //www.artima।com/shop/programming_in_scala_3ed), नोट्स: "सुपरटेप और उप प्रकार के संबंध रिफ्लेक्सिव हैं, जिसका अर्थ है कि एक प्रकार एक सुपर - प्रकार और स्वयं का एक उप प्रकार है।" –
इसका मतलब है कि 'ए' दोनों शून्य या शून्य से बड़ा कुछ भी। –