老师检查一下我的作业

来源:2-8 编程练习

宝慕林4199460

2022-09-10 19:26:41

问题描述:

这样是否可以

相关代码:

public class Test {
    public static void main(String[] args) {
        Work w=new Work("开心工作");
        TestWork one=new TestWork(10,5);
        DevelopmentWork two=new DevelopmentWork(1000,10);
System.out.print("父类信息测试:");
w.work();

System.out.print("测试工作类信息测试:");
one.work();

System.out.print("研发工作类信息测试:");
    two.work();
}
}

public class Work {
    // 属性:工作ming
    private String name ;

// 无参构造方法
    Work(){
        
    }
// 带参构造方法,完成工作类型的赋值
Work(String name){
    this.setName(name);
}

   // 公有的get***/set***方法完成属性封装
   public void setName(String name){
       this.name=name;
   }
   
   public String getName(){
       return this.name;
   }

// 方法:工作描述,描述内容为:开心工作
public void work() {
System.out.println("开心工作");
}
}

public class TestWork extends Work {
    //属性:编写的测试用例个数、发现的Bug数量
    private int testNum;
    private int bugNum;

    // 编写构造方法,并调用父类相关赋值方法,完成属性赋值
    public TestWork(int testNum,int bugNum){
        this.setTestNum(testNum);
        this.setBugNum(bugNum);
    }

    // 公有的get***/set***方法完成属性封装
    public void setTestNum(int testNum){
        this.testNum=testNum;
    }
    public int getTestNum(){
        return this.testNum;
    }
    
    public void setBugNum(int bugNum){
        this.bugNum=bugNum;
    }
    public int getBugNum(){
        return this.bugNum;
    }

// 重写运行方法,描述内容为:**的日报是:今天编写了**个测试用例,发现了**bug。其中**的数据由属性提供
public void work() {
        System.out.println("测试工作的日报是:今天编写了"+this.getTestNum()+"个测试用例,发现了"+this.getBugNum()+"个bug");
}
}


public class DevelopmentWork extends Work {
    // 属性:有效编码行数、目前没有解决的Bug个数
private int rowNum;
private int bugNum;
//编写构造方法,并调用父类相关赋值方法,完成属性赋值
public DevelopmentWork(int rowNum,int bugNum){
    this.setRowNum(rowNum);
    this.setBugNum(bugNum);
}

    // 公有的get***/set***方法完成属性封装
    public void setRowNum(int rowNum){
        this.rowNum=rowNum;
    }
    public int getRowNum(){
        return this.rowNum;
    }
    
    public void setBugNum(int bugNum){
        this.bugNum=bugNum;
    }
    public int getBugNum(){
        return this.bugNum;
    }

// 重写运行方法,描述内容为:**的日报是:今天编写了**行代码,目前仍然有**个bug没有解决。其中**的数据由属性提供
public void work() {
        System.out.println("研发工作的日报是:今天编写了"+this.getRowNum()+"行代码,目前仍然有"+this.getBugNum()+"个bug没有解决");
}
}


写回答

1回答

好帮手慕小小

2022-09-13

同学你好,代码整体完成的不错,逻辑清晰很好,但还有几个小问题,如下:

1)建议为Work类的构造方法增加public访问权限修饰符。

https://img.mukewang.com/climg/631fec14097bc51803490187.jpg

参考代码如下:

https://img.mukewang.com/climg/631fec750951e22303570146.jpg

2)建议在测试工作类、研发工作类构造方法中传入name属性,并按照题目要求在构造方法中调用父类相关赋值方法:

https://img.mukewang.com/climg/631fecc609a3549104620151.jpg

https://img.mukewang.com/climg/631fed01092e861004550138.jpg

修改后参考代码如下:

https://img.mukewang.com/climg/631fecdb0900538505620089.jpg

https://img.mukewang.com/climg/631fed18091c9dcb05760097.jpg

3)建议在测试工作类、研发工作类的工作描述方法中使用调用方法的方式获取工作名称,例如:

https://img.mukewang.com/climg/631fedda090663a305130064.jpg

4)建议在测试类中使用带有工作名称的构造方法创建对象,参考代码如下:

https://img.mukewang.com/climg/631fee140962de4a03900024.jpg

https://img.mukewang.com/climg/631fee1c0957826f05070026.jpg

祝学习愉快~

0

0 学习 · 9886 问题

查看课程