继承(开始)
extends 关键字
子类构造器特点
因为子类只继承了父类的成员&方法, 子类没有继承到父类的构造器,但是要求子类必须调用父类构造器
如果父类没有无参构造器子类创建时候会报错
a. 调用子类的无参&无参构造器,实际也默认先调用了父类的无参构造器
b. 如果父类没有无参构造器,子类必须显示的先调用父类的有参数构造器
//这里引出了super关键字 代表父类的引用
super("color", "name");
:super关键字的特点&使用
super:父类的引用,用于访问父类的属性,方法,构造器 语法
访问父类的属性: super.属性名=属性值
访问父类的方法:super.方法(实参列表)
访问父类的构造:super(实参列表)
package test1;
class Person{
String name;
charsex;
intage;
Person(String name,charsex,intage){
this.name=name;
this.sex=sex;
this.age=age;
}
public String toString()
{
returnname+" "+sex+" "+age;
}
}
class Student extends Person{
longnumber;
intmath;
intenglish;
intcomputer;
public Student(String n,chars,inta,longnu,intm,inte,intc)
{
super(n,s,a);
number=nu;
math=m;
english=e;
computer=c;
}
publicdouble aver()
{
return (computer+math+english)/3;
}
publicint max()
{
inta;
a=math>english? math:english;
a=a>computer? a:computer;
returna;
}
publicint min()
{
inta;
a=math<english? math:english;
a=a<computer? a:computer;
returna;
}
public String toString()
{
return" "+number+" "+math+" "+english+" "+computer;
}
}
publicclass Test {
publicstaticvoid main(String[] args) {
Person A =new Person("wangjingbo",'b',19);
Student B = new Student("wangjingbo",'b',19,20203991,100,90,80);
A.toString();
System.out.println(A.toString()+B.toString());
System.out.println("aver:"+B.aver()+" max:"+B.max()+" min:"+B.min());
}
}


浙公网安备 33010602011771号