2013-05-01 56 views
0

为什么当我们可以实例化一个类直接类实例化VS检索参考

Human human1 = new Human("john", "doe"); 

,当我们检索到的实例的引用为什么和已经完成?

Context.getSystemService(Context.TELEPHONY_SERVICE). 
+0

你能给我们多一点情景吗?或者你是否以非常广泛的术语询问对象实例? – 2013-05-01 15:50:41

+0

广义术语我猜。 – tony9099 2013-05-01 15:51:04

回答

1

只能检索到A类的引用:当你知道它已被实例化本身和B:当你有适当的访问,以获得您想要的参考。你这样做的原因是因为你已经创建了这个实例需要做一些工作,并且你希望这个工作可用于这个实例的未来使用,例如改变John Doe的姓。

另一方面,您可以随时选择实例化新对象,但并不总是有用。例如没有理由做到以下几点:

Human human1 = new Human("John", "Doe"); 
human1 = SomeHumanThatAlreadyExists; 

第一行是无用的,而这约翰,能源部,对象最终会被垃圾回收不被使用。这是基本问题的基本答案,如果您想要更高级的答案,请提出更具体的问题。

2

每次调用类构造函数时,都会创建该类的新实例。在你的例子中,你可以有几个独立存在的“John Doe”Human实例。您可以参考singelton。每个Android应用程序都将与同一个TELEPHONY_SERVICE实例交流。