2016-10-04 63 views
-5

如何在继承的java类,当子和超类在不同的包如何在继承的java类,当子和超类在不同的包

+4

相同的方式,正常的... ...? –

+0

一个班级并不关心其子类是谁或在哪里(只要它不是最终的),它可以从任何地方扩展。只要你能够将它导入到扩展类的Java文件中,你就可以扩展任何超类。 – Kon

+0

班级不知道他们的孩子。只要孩子能看到父母,它就可以自然地复制它。 – Gendarme

回答

0

刚像正常一样,使用import声明。

import some.folder.SuperClass 

public class SubClass extends SuperClass{ 
    public SubClass(){ 
     super(); 
    } 
} 
+0

'class SubClass extends some.folder.SuperClass'曾经使用过,还是太乱了? – Gendarme

+1

@Crandarme:太乱了。只有当你已经有一个同名的类被导入时,你才会使用它,比如'class Factory extends some.api.Factory'。但这也应该避免。 – Thilo

+0

@Gendarme看到http://stackoverflow.com/questions/2079823/importing-two-classes-with-same-name-how-to-handle – Brydenr

1

使其包装的一类外可见,声明为public

它然后可通过在其他包中的类被扩展(除非它是final,那么它不能被所有的子类)。

就像使用当前(和java)程序包之外的类一样,您必须使用import它(或使用完全限定名my.other.package.ClassName)。