黑马程序员技术交流社区
标题:
java中类的访问权限问题!
[打印本页]
作者:
rchm
时间:
2012-3-31 21:06
标题:
java中类的访问权限问题!
请问java中类的访问权限是只有两种吗?那内部类能不能有访问权限呢?为什么?
作者:
吴玉辉
时间:
2012-3-31 22:45
修饰类的修饰符有三种吧:public---最大访问权限 default----默认访问权限 final-----无法被继承
对于内部类,当内部在成员位置上时,可以被成员修饰符修饰,如private--将内部类在外部类中进行封装 static---当内部类被static修饰后,只能直接访问外部类中的static成员 public doufault
当内部类在局部位置上时,就不可以被成员修饰符修饰了
作者:
胡生蒙
时间:
2012-3-31 22:49
[b]private 只能够是当前类,才能访问。
默认(没有写访问修饰符) 只能是同一个包中能访问。
protected(保护)同一个包可以访问或者子类也可以访问。
public 任何地方都可以访问。
外部类访问内部类的成员需要创建内部类的对象,之后可以访问内部类的任何成员,包括private成员,需要注意的是成员内部类不可以有静态成员。静态方法中的局部内部类只能访问外围类的静态成员,访问不了非静态成员
作者:
黑马胡林
时间:
2012-3-31 23:10
作用域 当前类 同一package 子孙类 其他package
public √ √ √ √
protected √ √ √ ×
包访问权限 √ √ × ×
private × × × ×
不写时默认为包访问权限
作者:
黄方
时间:
2012-3-31 23:24
本帖最后由 黄方 于 2012-3-31 23:25 编辑
访问控制一共有4个,public(公有的),protected(受保护的),default(默认的,就是没有修饰符),private(私有的)。我们用一个图表示他们的权限:
修饰符 同类 同包 子类 通用性
公共(public) 是 是 是 是
受保护(protected)是 是 是
缺省(default) 是 是
私有(private) 是
权限修饰符,可以修饰类,方法和属性。而表达的意思与上表一致。有些注意的地方:类的权限不可以用private,你们想如果写一个类是private,谁也不让用写它干嘛;抽象方法的权限不可以是private和default.因为抽象方法一定要子类来实现的,子类都不可以用,抽象方法当然也没有意义了。
注意内部类是可以使用private权限的,而且还可以是static的。内部类可以正常调用其它类的方法,属性。别人也正常调用它。它的使用用和普通的方法,属性一致,我们就把它看做一个普通的方法就行了
作者:
刘元明
时间:
2012-3-31 23:25
类的访问权限有四种:public,protected,缺省,private
作者:
袁野
时间:
2012-4-1 07:22
一个没有内部类的程序的访问修饰符有四个,public,protected,缺省,private
内部类可以用用这个四个访问修饰符修士而外部类,不可以用 private 访问权限
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2