[英]Variable types in Java?
有时我会看到带有参数的方法,例如public method(ObjectName variable)
这是否意味着此方法仅接受ClassName
的对象? 例如来自另一个班级?
这可能是一个简单的问题,但是我习惯于仅将int's
, String
等等作为参数。 我猜有些方法可以接受其他类的实例? 编译器如何才能知道参数中的类有效? 它从进口中知道吗?
基本上,对您所有的问题都可以。 一些方法接受类的实例,其他方法或此类都可以。 编译器通过导入和包中的其他类知道。 如果您有更具体的问题,请编写一些代码。
可以在http://docs.oracle.com/javase/specs/jls/se8/html/jls-15.html#jls-15.12.2中找到正式规则
基本上,如果方法接受类A
那么它也可以接受A
任何子类。 A可以是任何类,例如BigInteger
InputStream
URL
等。如果方法可以接受接口B
那么它也将接受实现B
任何类。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.