Java继承(上)练习2-8,烦请老师检查并指正~
父类
public class Work {
// 属性:工作ming
private String name ;
// 无参构造方法
public Work(){
}
// 带参构造方法,完成工作类型的赋值
public Work(String name){
this.setName(name);
}
// 公有的get***/set***方法完成属性封装
public void setName(String name){
this.name = name;
}
public String getName(){
return name;
}
// 方法:工作描述,描述内容为:开心工作
public String work() {
String str = "开心工作";
return str;
}
}
子类一
public class TestWork extends Work {
//属性:编写的测试用例个数、发现的Bug数量
private int exNum;
private int bugNum;
// 编写构造方法,并调用父类相关赋值方法,完成属性赋值
public TestWork(){
}
public TestWork(String name, int exNum, int bugNum){
super(name);
this.setExNum(exNum);
this.setBugNum(bugNum);
}
// 公有的get***/set***方法完成属性封装
public void setExNum(int exNum){
this.exNum = exNum;
}
public int getExNum(){
return exNum;
}
public void setBugNum(int bugNum ){
this.bugNum = bugNum;
}
public int getBugNum(){
return bugNum;
}
// 重写运行方法,描述内容为:**的日报是:今天编写了**个测试用例,发现了**bug。其中**的数据由属性提供
public String work() {
String str = this.getName() + "的日报是:今天编写了" + this.getExNum() + "个测试用例,发现了" + this.getBugNum() + "个bug。";
return str;
}
}
子类二
public class DevelopmentWork extends Work {
// 属性:有效编码行数、目前没有解决的Bug个数
private int effLine;
private int unBug;
//编写构造方法,并调用父类相关赋值方法,完成属性赋值
public DevelopmentWork(){
}
public DevelopmentWork(String name, int effLine, int unBug){
super(name);
this.setEffLine(effLine);
this.setUnBug(unBug);
}
// 公有的get***/set***方法完成属性封装
public void setEffLine(int effLine){
this.effLine = effLine;
}
public int getEffLine(){
return effLine;
}
public void setUnBug(int unBug){
this.unBug = unBug;
}
public int getUnBug(){
return unBug;
}
// 重写运行方法,描述内容为:**的日报是:今天编写了**行代码,目前仍然有**个bug没有解决。其中**的数据由属性提供
public String work() {
String str = this.getName() + "的日报是:今天编写了" + this.getEffLine() + "行代码,目前仍然有" + this.getUnBug()+ "个bug没有解决。";
return str;
}
}
测试类
public class Test {
public static void main(String[] args) {
System.out.print("父类信息测试:");
Work w = new Work();
System.out.println(w.work());
System.out.print("测试工作类信息测试:");
TestWork tw = new TestWork("测试工作", 10, 5);
System.out.println(tw.work());
System.out.print("研发工作类信息测试:");
DevelopmentWork dw = new DevelopmentWork("研发工作",1000, 10);
System.out.println(dw.work());
}
}
15
收起
正在回答
1回答
同学你好,已完成练习,棒棒哒!继续加油!
祝学习愉快!
2023版Java工程师
- 参与学习 人
- 提交作业 8790 份
- 解答问题 9886 个
综合就业常年第一,编程排行常年霸榜,北上广深月薪过万! 不需要基础,无需脱产即可学习,只要你有梦想,想高薪! 全新升级:技术栈升级(包含VUE3.0,ES6,Git)+项目升级(前后端联调与功能升级)
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星