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

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

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("测试工作", 10, 5);
		System.out.print("\n测试工作类信息测试:" + t.work());
		DevelopmentWork d = new DevelopmentWork("研发工作", 1000, 10);
		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下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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