本帖最后由 Great_Man 于 2014-6-18 12:39 编辑
我来看看,包的定义跟上楼说的一样啦。
使用了protected(保护修饰符)后。
同一包中的不同的类:表示protected修饰的对象只能在同一个包中有效,其它包中访问将出错。比如你在packa的class A 中定义了protected function();而你在packb中这样用就不行了:new packa.A().function();
不同包中的子类:同样是上面的例子,如果你在packb中定义了class B extends packa.A。那么,你可以在packb中使用
new B().function();了。想啊,同包是默认的权限,默认就是能继承不同包中的类。
不同包中的非子类访问:如果理解了上面两个,自然这个是不行的。如果这个是可行的,那么“可以访问不同包中的子类”就不同声明了。
|