2011-05-29 114 views
0

我想知道是否有人可以解释一些关于为我施放的类。Android Java类铸造

我在玩Android,我有一个名为ExApp的应用程序的子类。

我想从我的活动之一调用ExApp的方法,所以我做的:

ExApp ex = ((ExApp)getapplication()); 

我不明白的是为什么我需要一个双括号的?为什么我不能:

ExApp ex = (ExApp)getApplication(); 

谢谢。

+0

为什么你认为你不能? – MByD 2011-05-29 07:31:20

回答

7

你可以。这两个陈述完全一样。

如果您对结果调用方法,您会发现不同之处在于,例如,

(ExApp) getApplication().foo(); 

是不同于:

((ExApp) getApplication()).foo(); 

在第一种情况下,它是foo()其被投射到ExApp的结果;第二,这是ExApp的结果,整体表达式是foo()的返回类型。