日期:2014-05-20  浏览次数:20808 次

关于super
super的作用是调用父类构造方法,尤其在需要调用有参构造方法时,需要super;
但是下面这段代码中super的作用让我不解,请指教。
public class PrivateTest {
private String uname; //设置姓名
private int uid; //设置编号
public PrivateTest(String uname, int uid) {
super();
this.uname = uname;
this.uid = uid;
}
private int getUid() {
return uid;
}
private void setUid(int uid) {
this.uid = uid;
}
private String getUname() {
return uname;
}
private void setUname(String uname) {
this.uname = uname;
}
public static void main(String[] args) {
PrivateTest pt=new PrivateTest("张三",1222);
String a=pt.getUname();
int i=pt.getUid();
System.out.println("编号id是:"+i);
}

}

------最佳解决方案--------------------
可以的,那本来就是多此一举
------其他解决方案--------------------
就是除了这个构造方法的内容它还做了父类无参构造方法的工作。
------其他解决方案--------------------
Object是所有类的父类,只是隐式的继承,所以这里的super()是调用Object的构造方法。
------其他解决方案--------------------
引用:
引用:
就是除了这个构造方法的内容它还做了父类无参构造方法的工作。

他的父类在哪里??

Object类是所有类的父类。
------其他解决方案--------------------
引用:
就是除了这个构造方法的内容它还做了父类无参构造方法的工作。


他的父类在哪里??
------其他解决方案--------------------
引用:
引用:
引用:
就是除了这个构造方法的内容它还做了父类无参构造方法的工作。

他的父类在哪里??
Object类是所有类的父类。


如果这短代码中没有
super();
 可以吗?