我會嘗試儘可能簡單地設置它,因爲它也讓我感到困惑。調用類型對象的方法類
我返回類型的對象的方法Class
即
public Class foo(){...}
當我把這個方法我保持的結果類型,即類的變量
Class obj = new foo();
foo()
可以返回許多不同的類,但它們都包含相同的方法bar()
。
如何從我的obj
變量調用該方法?我試過obj.bar()
但IDE似乎並不喜歡它。我得到
Error:(59, 34) error: cannot find symbol method
bar()
'類的obj =新富()'永遠不會是有效的,除非你是在談論一個不同的'Class'型比'java.lang.Class' 。一個簡短但完整的程序展示了這個問題會使這一切變得更加清晰。 – 2015-03-19 09:45:25
您必須使用'((foof)obj).bar()' – Jens 2015-03-19 09:46:07
正如Jon Skeet所說,「Class obj = new foo()'是無效的。你可能想做一些像'Foo obj = foo()。newInstance()',然後'obj.bar()'。 – NiziL 2015-03-19 09:48:05