3个回答
展开全部
super,超类,即父类。当你实例化一个子类的时候,编译器会自动查找子类的父类,并先将父类初始化。
当你的子类使用带参数的构造函数时,你必须保证该子类的父类也有相同的带参数的构造器。
1.super(),它用来告诉编译器,爷我用的是哪个型号的构造器,方便你找俺老子。
2.super.属性,用于访问父类属性或方法。
比如,
public class Father(){
public Father(){}
public Father(String name,String sex){
this.name=name;
this.sex=sex;
}
public String name="免贵姓唐";
public String sex;
}
public class Son_1(){
public Son_1(){super();//此处表示为无参构造函数,一般可省略}
public Son_1(String name,String sex){
super(name,sex);
}
public String name="真的免贵";
public static void main(String[] arg){
print(super.name+" "+name);
}
}
快睡了,思维有点混。不懂hi我好了。568418555,Q我也成。
当你的子类使用带参数的构造函数时,你必须保证该子类的父类也有相同的带参数的构造器。
1.super(),它用来告诉编译器,爷我用的是哪个型号的构造器,方便你找俺老子。
2.super.属性,用于访问父类属性或方法。
比如,
public class Father(){
public Father(){}
public Father(String name,String sex){
this.name=name;
this.sex=sex;
}
public String name="免贵姓唐";
public String sex;
}
public class Son_1(){
public Son_1(){super();//此处表示为无参构造函数,一般可省略}
public Son_1(String name,String sex){
super(name,sex);
}
public String name="真的免贵";
public static void main(String[] arg){
print(super.name+" "+name);
}
}
快睡了,思维有点混。不懂hi我好了。568418555,Q我也成。
展开全部
super的用法和this的用法类似,可以表示父类的构造方法如super(),表示父类可以调用父类中的方法和属性。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
java中通过super来实现对父类成员访问,super用来引用当前对象的父类。super的使用有三种情况。
1.访问父类被隐藏的成员变量。例如:
super.variable;
2.调用父类中被重写的方法。例如:
super.Method([paramlist]):
3.调用父类的构造函数,例如:
super([paramlist]):
例子:
class SuperClass
{
int x ;
SuperClass()
{
x=0;
System.out.println("in SuperClass:x="+x);
}
void member()
{
x=0;
System.out.println("in SuperClass.member()");
}
}
class SubClass extends SuperClass
{
int x;
SubClass()
{
super(); //调用父类superClass的构造方法
x=6; //super()要放在犯法中的第一句
System.out.println("in SubClass:x="+x);
}
void member()
{
super.member(); //调用父类的方法
System.out.println("in SubClass.member");
System.out.println("super.x="+super.x+"sub.x="+x);
}
}
public class AutInherit
{
public static void main(String[] args)
{
SubClass SubC=new SubClass();
SubC.member();
}
}
}
1.访问父类被隐藏的成员变量。例如:
super.variable;
2.调用父类中被重写的方法。例如:
super.Method([paramlist]):
3.调用父类的构造函数,例如:
super([paramlist]):
例子:
class SuperClass
{
int x ;
SuperClass()
{
x=0;
System.out.println("in SuperClass:x="+x);
}
void member()
{
x=0;
System.out.println("in SuperClass.member()");
}
}
class SubClass extends SuperClass
{
int x;
SubClass()
{
super(); //调用父类superClass的构造方法
x=6; //super()要放在犯法中的第一句
System.out.println("in SubClass:x="+x);
}
void member()
{
super.member(); //调用父类的方法
System.out.println("in SubClass.member");
System.out.println("super.x="+super.x+"sub.x="+x);
}
}
public class AutInherit
{
public static void main(String[] args)
{
SubClass SubC=new SubClass();
SubC.member();
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询