黑马程序员技术交流社区
标题:
求助一个权限问题
[打印本页]
作者:
于冰
时间:
2011-12-22 14:23
标题:
求助一个权限问题
代码如下:
class Tel {
Tel(){
System.out.println("fulei tel");
}
void show(){
System.out.println("number");
}
}
class newTel extends Tel
{
newTel(){
//super();
System.out.println("zilei tel");
}
void show(){
//System.out.println("number");
super.show();
System.out.println("name");
System.out.println("pic");
}
}
public class TelTest
{
public static void main(String[] args){
newTel nt = new newTel();
}
}
这样的代码是好用的,此时的.java文件叫做TelTest
.java
同一个java文件中不能存在多个public 类所以Tel类和newTel类不能是public权限。
****但是,为什么不能把Tel类和newTel类定义为私有类型呢?都是私有的话,权限相同也满足继承的条件a。private class Tel 为什么不好使呢?
作者:
李楠
时间:
2011-12-22 14:33
第一点是一个文件只能有一个public类,这是你对外暴露的唯一的公共接口,如果有一个以上的public类,就会报错,并且文件名和public类名字必须完全相同。
第二点是把类设为private类型,不是不可以,但是,除了这个类自己,谁也不能访问他,这个类就没有意义了。同样也不能设为protected的。
所以对于类的访问权限,要么就是默认的包访问权限,也就是你什么都不加,就是默认的包权限,要么就是public权限的。
private权限和protected权限的类也不是完全不能用,但是只会用在内部类中。
作者:
王昌盛
时间:
2011-12-22 14:42
只有当一个类为内部类时才可定义为private类型,此时只有该类的外部类可以实例化此内部类。而非内部类定义为private的话,没有其他类可以实例化这个类,也就没有意义了。
作者:
yunqiangshan
时间:
2011-12-22 14:43
private不能用来修饰类,除非这个类是内部类,private只能用来修饰成员。
作者:
方书堂
时间:
2011-12-22 14:50
首先private是不可以修饰外部类的,要是修饰了这个类就不能建立对象而且类私有了,别的类就不知道这个类的存在,也不能继承,这个类也就没有意义了啊
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2