请老师帮忙看下这段代码还有什么需要改进的地方

请老师帮忙看下这段代码还有什么需要改进的地方

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
public class Work
{
    // 属性:工作ming
    private String name;
 
    // 无参构造方法
    public Work()
    {
    }
 
    // 带参构造方法,完成工作类型的赋值
    public Work(String name)
    {
        this.setName(name);
    }
    // 公有的get***/set***方法完成属性封装
 
    public String getName()
    {
        return name;
    }
 
    public void setName(String name)
    {
        this.name = name;
    }
 
    // 方法:工作描述,描述内容为:开心工作
    public String work()
    {
        return "开心工作";
    }
}
 
public class TestWork extends Work
{
    // 属性:编写的测试用例个数、发现的Bug数量
    private int testNum;
    private int bugNum;
 
    // 编写构造方法,并调用父类相关赋值方法,完成属性赋值
    public TestWork()
    {
 
    }
 
    public TestWork(String name, int testNum, int bugNum)
    {
        super(name);
        this.setTestNum(testNum);
        this.setBugNum(bugNum);
    }
 
    // 公有的get***/set***方法完成属性封装
    public int getTestNum()
    {
        return testNum;
    }
 
    public void setTestNum(int testNum)
    {
        this.testNum = testNum;
    }
 
    public int getBugNum()
    {
        return bugNum;
    }
 
    public void setBugNum(int bugNum)
    {
        this.bugNum = bugNum;
    }
 
    // 重写运行方法,描述内容为:**的日报是:今天编写了**个测试用例,发现了**bug。其中**的数据由属性提供
    public String work()
    {
        String str = super.getName() + "的日报是:今天编写了" this.getTestNum() + "个测试用例,发现了" this.getBugNum() + "个bug.";
        return str;
    }
 
}
 
public class DevelopmentWork extends Work
{
    // 属性:有效编码行数、目前没有解决的Bug个数
    private int codedRow;
    private int noSoloBugNum;
 
    // 编写构造方法,并调用父类相关赋值方法,完成属性赋值
    public DevelopmentWork()
    {
 
    }
 
    public DevelopmentWork(String name, int codedRow, int noSoloBugNum)
    {
        super(name);
        this.setCodedRow(codedRow);
        this.setNoSoloBugNum(noSoloBugNum);
    }
 
    // 公有的get***/set***方法完成属性封装
    public int getCodedRow()
    {
        return codedRow;
    }
 
    public void setCodedRow(int codedRow)
    {
        this.codedRow = codedRow;
    }
 
    public int getNoSoloBugNum()
    {
        return noSoloBugNum;
    }
 
    public void setNoSoloBugNum(int noSoloBugNum)
    {
        this.noSoloBugNum = noSoloBugNum;
    }
 
    // 重写运行方法,描述内容为:**的日报是:今天编写了**行代码,目前仍然有**个bug没有解决。其中**的数据由属性提供
    public String work()
    {
        String str = super.getName() + "的日报是:今天编写了" this.getCodedRow() + "行代码,目前仍然有" this.getNoSoloBugNum()
                "个bug没有解决.";
        return str;
    }
 
}
 
public class Test
{
    // 测试方法
    public static void main(String[] args)
    {
        Work w = new Work();
        System.out.print("父类信息测试:" + w.work());
        TestWork t = new TestWork("测试工作"105);
        System.out.print("\n测试工作类信息测试:" + t.work());
        DevelopmentWork d = new DevelopmentWork("研发工作"100010);
        System.out.print("\n研发工作类信息测试:" + d.work());
    }
 
}
或者有什么不好的编写方式。麻烦老师指导一下谢谢!


正在回答

登陆购买课程后可参与讨论,去登陆

3回答

效果满足需求,继续加油!

  • 我想跑路 提问者 #1
    非常感谢!
    2018-02-22 14:51:51
  • 那个super前面哪里可以找到呀,没看到呢!百度上面看了下和this性质一样,只能是在子类中调用父类的属性来用
    2018-06-20 14:46:01
  • 第二个步骤,《Java继承(上)》的2-12、2-16、2-20从基本的super使用,到super与this的区别,老师都有详细的介绍。建议同学在初学阶段不要过度快进,循序渐进学习,稳扎稳打,才能事半功倍,加油!
    2018-06-20 15:21:00
旱地章鱼 2018-04-22 11:46:46

我测试代码,怎么是个死循环。。。

  • 代码运行是没有问题的,你检查一下运行的代码是否和上述代码一致呢
    2018-04-23 10:04:54
terribleLjh 2018-04-11 15:11:55


怎么做的这么好呢,分享一下学习经验吧

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师
插入代码