当前位置: 技术问答>java相关
JAVA里的 super 关键字如何使用?
来源: 互联网 发布时间:2015-03-15
本文导语: 多举几个例子,请讲得详细点,谢谢! | 1.表示父类 2.点取父类成员 3.作为方法名表示父类构造方法。 4.子类对象的创建:沿继承链调用父类的构造方法。 例如: public class Employee{ private String na...
多举几个例子,请讲得详细点,谢谢!
|
1.表示父类
2.点取父类成员
3.作为方法名表示父类构造方法。
4.子类对象的创建:沿继承链调用父类的构造方法。
例如:
public class Employee{
private String name;
private int age;
public String getDetails(){
return "Name: "+name+"nAge: "+age;
}
}
public class Manager extends Employee{
private String department;
public String getDetails(){
//call parent method
return super.getDetails()+"nDeparment: "+department;
}
}
///////////////////////////
public class Manager extends Employee{
private Sring department;
public Manager(String name,int age;String dept){
super(name,age);
department=dept;
}
public Manager(String n,String dept){
super(name);
department=dept;
}
public Manager(String dept){ // This code fails : no super()
department=dept;
}
}
2.点取父类成员
3.作为方法名表示父类构造方法。
4.子类对象的创建:沿继承链调用父类的构造方法。
例如:
public class Employee{
private String name;
private int age;
public String getDetails(){
return "Name: "+name+"nAge: "+age;
}
}
public class Manager extends Employee{
private String department;
public String getDetails(){
//call parent method
return super.getDetails()+"nDeparment: "+department;
}
}
///////////////////////////
public class Manager extends Employee{
private Sring department;
public Manager(String name,int age;String dept){
super(name,age);
department=dept;
}
public Manager(String n,String dept){
super(name);
department=dept;
}
public Manager(String dept){ // This code fails : no super()
department=dept;
}
}
|
super有两种用法,
其一,在构在方法体内使用:
如下:
public class a extends b
{
public a (int t)
{ super(t);
}
}
其二,在其它非构造方法体内使用。
如下:
public class a entends b
{ public a()
{}
public print(String a)
{ super.print(a);
}
}
其一,在构在方法体内使用:
如下:
public class a extends b
{
public a (int t)
{ super(t);
}
}
其二,在其它非构造方法体内使用。
如下:
public class a entends b
{ public a()
{}
public print(String a)
{ super.print(a);
}
}
|
注意要放在构造函数的第一行