请问这样可以吗

来源:2-8 编程练习

赵林0225

2021-07-07 11:35:10

public class Work {

//此类为工作类(父类),用于存放共有属性(工作名称)和共有方法(工作内容描述)

//共有属性

private String workname;

//无参构造

public void Work() {

}

//全参构造用于传参

public void Work(String workname) {

this.workname=workname;

}

//get/set方法

public void setWorkname(String workname) {

this.workname=workname;

}

public String getWorkname() {

return this.workname;

}

//共有的工作描述方法

public void say() {

System.out.println("父类信息测试:开心工作!");

}

相关代码:

public class TestWork extends Work {
//此类为测试工作类(工作类的子类A,继承工作类(Work))
//建立测试工作类的特有属性
private int exnum;//测试用例个数

private int bugnum;//发现的bug数量

public TestWork() {
}

public TestWork(int exnum,int bugnum) {
this.setExnum(exnum);
this.setBugnum(bugnum);
}

//get、set方法
public int getExnum() {
return exnum;
}

public void setExnum(int exnum) {
this.exnum = exnum;
}

public int getBugnum() {
return bugnum;
}

public void setBugnum(int bugnum) {
this.bugnum = bugnum;
}
//重写父类中测试工作类描述的方法
public String testsay() {
return this.getWorkname()+"的日报是:几天编写了"+this.exnum+"个测试用例,发现了"+this.bugnum+"个bug";
}


}

相关代码:public class BuildWork extends Work{
//此类为工作类(Work)的子类--研发工作类
//研发类的属性
private int codenum;//代码行数
private int bugnum;//bug数量

public BuildWork() {

}
public BuildWork(int codenum,int bugnum) {
this.setCodenum(codenum);
this.setBugnum(bugnum);
}

public int getCodenum() {
return codenum;
}

public void setCodenum(int codenum) {
this.codenum = codenum;
}

public int getBugnum() {
return bugnum;
}

public void setBugnum(int bugnum) {
this.bugnum = bugnum;
}
//重写的父类中的方法
public String buildsay() {
return this.getWorkname()+"的日报是:几天编写了"+this.codenum+"行代码,目前仍然有"+this.bugnum+"个bug没有解决";
}
}

​相关代码:public class Test1 {
//此类为测试类
public static void main(String[] args) {
//首先测试父类方法
Work one=new Work();
one.say();

TestWork test=new TestWork(10,5);
test.setWorkname("测试工作类");
System.out.println(test.testsay());


BuildWork build=new BuildWork(1000,10);
build.setWorkname("研发工作类");
System.out.println(build.buildsay());


}

}


写回答

1回答

好帮手慕小小

2021-07-07

同学你好,重写的方法需要与父类中方法的方法名、参数都相同​,而子类中的testsay、buildsay方法是子类特有的方法,不是重写的方法。

代码的修改建议可参考:https://class.imooc.com/course/qadetail/295533

祝学习愉快~

1

0 学习 · 9886 问题

查看课程