两个类:
=======================================
package aa.bb.cc.dd;
public class Impl extends Base{
}
=======================================
package aa.bb.cc;
public class Base{
}
=======================================
我想做到,只有 aa.bb.cc路经下(包括子目录)的类才可以继承 base
如何实现?
比如 package aa.dd.ee 下的类就不能继承cc下的Base类.
我尝试这样做
=======================================
package aa.bb.cc;
protected class Base{
}
和
class Base{
}
=======================================
都不行..
------解决方案--------------------
如果是只限制同一个包的子类才可以继承的话,可以使用默认的访问控制符,但是如果想使子包也可以继承的话就没有专门的访问控制符了。
------解决方案--------------------
只能限制同一个包中可以继承,就是使用默认的访问控制符,这样不是同一个包下的其他类就不能访问这个类,比如 package aa.dd.ee 下的类就不能继承cc下的Base类. ,这个是不可能解决的
------解决方案--------------------
在打包的时候可以加入一些限制信息.
但是能不能满足lz的需求就不太清楚了.