首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

再问类的访问权限解决方案

2012-03-29 
再问类的访问权限如果一个包mypackage的myclass.java文件中有2个类,分别为public class myclass 和class r

再问类的访问权限
如果一个包mypackage的myclass.java文件中有2个类,分别为public class myclass 和class room 
由于myclass是public的, 可以被其他包中的类访问,而room只能在mypackage包范围内访问,不能被mypackage包以外的包访问。
我们说类可以被访问是指我们可以用这个类来生成对象? 或者是用这个类来作为基类来扩展子类?还是两者都有?
比如说这个类 room, 在把包import进一个包之外的文件后, 可否生成一个room 的对象? 可否用 extends room?
谢谢 


[解决办法]
LZ你自己已经了解的非常明确了,public修饰的只要是个人他就可以访问。缺省的话默认为friendly,不建议使用。访问的话,public修饰的当然可以new对象了。扩展也无碍。
[解决办法]
既然是另一個包中,room應該是不可見的吧
[解决办法]
1.我想应该两者都有吧!它被继承就是被子类所访问!用它来生成对象也就是调用它那不就是访问吗?

2.在把包import进一个包之外的文件后, 可否生成一个room 的对象?可否用 extends room? 
答: (1)不可以.但在同一个包中可以
(2)不可以继承.在同一个包中默认,公有,受保护,的都可以继承,但如果不是在同一个包中默认的就无法继承.

[解决办法]
class room 默认为包访问权限 也就是只能在默认包里用(mypackage)
引入到另个包里应该不可以的
public class room可以的

热点排行