在MIDP api中有一个public abstract class Layer
,这个类有一个javadoc发布但是它没有在javadoc中显示构造函数。
在同一个api中还有另外两个类Sprite和TiledLayer。
public class Sprite extends Layer
public class TiledLayer extends Layer
所有这些类都在包javax.microedition.lcdui.game
这意味着Layer的构造函数具有默认访问权限。
我想知道为什么class Layer
的api已经发布,即使它不能在用户代码中进行细分?
答案 0 :(得分:4)
Layer
的公共接口已发布,因为即使您无法扩展它,当您以多态方式引用Sprite
或TiledLayer
的实例时,仍可以使用它。
换句话说,可以将Sprite
的实例视为Layer
的实例,因此了解Layer
的公共接口非常重要,这样您就知道了什么成员可以使用。
答案 1 :(得分:0)
类的默认构造函数与类本身具有相同的可见性。由于Layer是公共的,它的默认构造函数是public,所以它可以直接子类化。
http://java.sun.com/docs/books/jls/third_edition/html/classes.html#8.8.9