[英]Java object and method parameters
我只是想知道我是否遗漏了以下问题的任何内容。 我跟我的答案提出了问题。
什么样的对象可以传递给以下方法? 可以在此方法中的obj上调用哪些方法?
public void doThis (Object obj)
{
// some code
}
我的答案:
可以在上述方法中传递的对象类型是从作为当前类的超类的实际类实例化的对象,以及已在当前类本身中实例化的对象。 此外,已经从其他实际类实例化的对象可以类型转换为当前类或其中一个超类,以允许作为方法doThis()的参数。
可以在方法内部调用的方法包括当前类中的任何公共,受保护或私有方法以及来自超类的任何继承方法。
这是正确的吗?
什么样的对象可以传递给以下方法?
Object
任何子类,包括Object
本身。
可以在此方法中的obj上调用哪些方法?
Object
类中定义的任何公共/受保护方法(例如toString
, notify
, wait
等)。 除非您明确地向下转换,否则这不包括子类中定义的方法。
你真的是一个简单的答案。 您可以传递给doThis
的参数可以是Object
类型的Object
或其任何子类。 这是一切(原始类型除外)。
在doThis
,您可以调用大多数方法,而不仅仅是类和超类中的方法。 例如, System.out.println()
。
你的答案是不正确的。
Object
任何子类都可以传递给此方法。 所有对象都是Object
子类,包括数组。 传入后,您可以调用Object
类中定义的任何方法,除非您首先对其进行类型转换。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.