JAVA继承问题

来源:百度知道 编辑:UC知道 时间:2024/05/17 02:43:26
abstract class Employee{
String name,basic,adress;
Employee(){}
Employee(String name1,String basic1,String adress1){
name = name1;
basic = basic1;
adress = adress1;
}

void show(){
System.out.println("Name:"+name);
System.out.println("Basic:"+basic);
System.out.println("Adress:"+adress);
}
}

class Manager extends Employee{
String department;
Manager(){}
Manager(Sring name1,Strng basic1,String adress1,String department1){
super(name,basic,adress);
department = department1;
}

void show(){
super.show();
System.out.println("Department:"+department+"\n经理信息");
}
}

class Director extends Employee{
String transportAllowance;
Director(){}
Director(String name1,String basic1,String adress1,Stri

super(name,basic,adress); 应该改为super(name1,basic1,adress1);
这句话是调用父类的有参构造函数,并不是调用父类型的变量

在子类中,要调用父类的构造方法,用super加上参数是正确的,但是在进行参数传值的时候,应该用子类自己的参数,而不是直接抄来父类的方法。
应该注意方法的调用时参数的写法,以及应该用哪个参数。
这句话:
super(name,basic,adress);
应该是:
super(name1,basic1,adress1);
这样才是对的。

"Name:IBM";
"Basic:CEO";
"Adress:湖北荆州";
"Department:111
经理信息";

"Name:MS";
"Basic:CHO";
"Adress:湖北荆州";
"TransportAllowance:222
员工信息";

请问阁下想问什么问题