【发布时间】:2011-06-02 12:47:43
【问题描述】:
我读过我们只能通过继承来实例化一个抽象类,但我们不能直接实例化它。
但是,我看到我们可以通过调用另一个类的方法来创建具有抽象类类型的对象。
比如——LocationProvider是一个抽象类,我们可以通过调用LocationManager类中的getProvider()函数来实例化它:
LocationManager lm = getSystemService(Context.LOCATION_PROVIDER);
LocationProvider lp = lm.getProvider("gps");
抽象类在这里是如何实例化的?
【问题讨论】:
-
除其他外,Chuck Norris 可以实例化抽象类:ithoughts.de/chuck-norris-programmer-facts ;-)
-
Chuck Norris 可以在编程中做很多其他技巧:chucknorrisfacts.co.uk/fact/category/4
-
LocationProvider 不是我认为的抽象类,它只是一个普通的公共类,正如您在此处看到的那样。 developer.android.com/reference/android/location/… 你可能会说这是因为他们在类文档中使用了抽象词。
标签: java android class oop abstract