当前页面: 开发资料首页 → J2SE 专题 → 问:关于java的访问修饰符的问题
问:关于java的访问修饰符的问题
摘要: 问:关于java的访问修饰符的问题
用本山的话来说就是有点乱
常见的修饰符有这么几种 public default protected private
我想问问 这几种在修饰类和类中的方法和字段的时候有什么区别
public是最高的 private是最低的 那么dufault 是不是要高于protected呢
protected修饰词的范围比dufault广, default就是不指明access权限,默认是在同一个包中
public --#62; protected --#62; default --#62; private
所以对A的i, 只要在同一个包中,任何一个class都能通过 a.i 访问到
感觉defualt和protected没什么区别啊
protected不也能在同一包中访问吗?
而default不也能被继承的类访问啊
protected还可以包外继承
default不可以包外被继承
你指的是修饰类的时候还是修饰字段的时候呢?
都一样
其实试一下就很清楚了,不要花多少时间的
也就是说在同一包中
default和protected是一样的吗?
在同一包中确实是一样的
但protected因为包外可以被继承所以范围要广
public 所有的都可以访问
pravite 只有在同一个类中
protected 所有的子类,包括不同包中的
default 是包级别的,可以在同包中访问
这个的确是有点乱-#62;_-#60;
public 所有都可以访问
protected 同包内 不同包的子类
default同包
private同类